Build CI on Microsoft-hosted windows-2022 and stop pushing VPack from CI (#142)
- Test: build DevTools CI on Microsoft-hosted windows-2022 pool
Co-authored-by: Copilot App 223556219+Copilot@users.noreply.github.com Copilot-Session: 67c31a92-b3e3-441e-9dd5-823d4097a54a
- Stop publishing the XboxLiveDeveloperTools VPack from CI
The VPack consumed by the OS (src\xbox\devex\vs\extensionSdks\xsapi\tools\vpack) is produced by the sdk.xbox-live-developer-tools.OneBranch.Official pipeline in Xbox.Services, not by this CI pipeline. Pushing the same package name from CI created unofficial versions and was the only reason CI needed a compliant build pool and the PAT variable group.
Remove the PkgESVPack push, the VPack staging and manifest copy, the VPack artifact, and the CoreSdk-PatRotatorAKV-XS variable group. CI now only builds and publishes pipeline artifacts.
Co-authored-by: Copilot App 223556219+Copilot@users.noreply.github.com Copilot-Session: 67c31a92-b3e3-441e-9dd5-823d4097a54a
Co-authored-by: Copilot App 223556219+Copilot@users.noreply.github.com Copilot-Session: 67c31a92-b3e3-441e-9dd5-823d4097a54a
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802047560号
Welcome
Please refer to the official Xbox Live Tools documentation site for further information.
The Microsoft Xbox Live Tooling API provides a way to:
To get access to Xbox Live services you must be a managed developer, enrolled in the ID@Xbox program or participating in the Xbox Live Creators Program. To learn more about these programs, please refer to the developer program overview.
Repo Structure
Command Line Executable Usage:
XblDevAccount.exe
This executable is used to signin/out dev accounts and to save the credentials to be used across other Xbox Live executables that require dev credentials.
Usage
signin: This command will pop up UI if needed. The last used account information will be saved for further use across all other executables.
Success output example:
signout: This command will delete the last signed in account information, and clear up cached tokens.
Success output example:
XblTestAccount.exe
XblTestAccount signs in an Xbox Live test account and caches the credential, so that later runs obtain a user token without showing any UI. It also reads and changes the privileges and privacy settings of the signed in account, which is the command line equivalent of the Privacy and Privilege tabs in XblTestAccountGui.
Usage
signin: Signs in a test account and caches the credential. UI is only shown when there is no usable cached credential, or when
--forceis passed.Success output example:
show: Displays who the signed in test account is. The privileges and the privacy settings have their own commands, so that each command answers one question.
Success output example:
signout: Deletes the last signed in test account information, and clears up cached test account tokens.
privilege: Shows the privileges of the signed in test account, or blocks and allows them. The action is required, and the sandbox defaults to the one the account signed in to.
privilege showreports every privilege this tool knows the name of together with the state the account holds it in, so one listing covers both the names and the states. Privileges are claims on the token, so it reports them as they were at sign in; add--refreshto mint a new token and see them as they are now. Pass--blocked(-b) to report only the restricted privileges, and--json(-j) to get the same data as parsable json.Success output example:
A privilege whose number this tool does not have a name for is reported as
(unknown), because the service mints new numbers from time to time. A privilege the token names in neither claim is reported asNot held.blockandallowconfirm the change and stop there, because the list they used to print came from the parental service and so disagreed withprivilege show: a privilege the service derives from a privacy setting is enforced through the token claims and never appears in the parental list.privilege show --refresh -bis the way to read the effective set.Only 185 (Cross Network Play) and 254 (Multiplayer Sessions) can be blocked and allowed, matching what XblTestAccountGui exposes; the tool refuses other numbers up front rather than letting the service reject them with a bare HTTP 400. Privileges that the service derives from a privacy setting are changed through that setting instead:
privacy set CommunicateUsingVideoprivacy set AllowUserCreatedContentViewingprivacy set CommunicateUsingTextAndVoiceprivacy set CommunicateUsingTextAndVoiceAny value other than
Everyonerestricts, soPeopleOnMyListrestricts just asBlockeddoes.The claims settle a little after a change, so a
privilege show --refreshissued immediately afterwards may still report the old value; repeat it after a moment.privacy: Shows the privacy settings of the signed in test account, or changes one of them. The action is required.
showreports every setting the service exposes with its current value, so it is also the way to discover the setting names thatsetaccepts. Setting names are matched without regard to case.Success output example:
A privacy setting is the account’s own choice about who it shares with, whereas a privilege is a restriction the parental service applies. A write is not immediately visible to a read, so the tool reads the value back until the change appears and warns if it never does.
XblPlayerDataReset.exe
XblPlayerDataReset is used to reset a player’s data in test sandboxes. Data includes achievements, leaderboards, stats and title history. An individual or group of accounts can be reset by its email address, or to reset an account by XUID, first run XblDevAccount.exe to log in with a Partner Center account.
Resetting by email signs in each test account. Sign in UI is only shown for an account that has no cached credential yet, so running
XblTestAccount.exe signinonce per account beforehand lets this run unattended.Usage:
Success output example:
Error output example:
GlobalStorage.exe
GlobalStorage.exe is used to manage title global storage in test sandboxes, before publish to RETAIL. XblDevAccount.exe signin is required to be called at least once before first use.
Usage:
quota: Get title global storage quota information.
Success output example:
list: Gets a list of blob meta-data under a given path for the title global storage.
Success output example:
delete: Deletes a blob from title storage.
download: Downloads blob data from title storage.
upload: Uploads blob data to title storage.
XblConfig.exe
XblConfig.exe is used to manage Xbox Live configuration data for games developed in Windows Dev Center, also known as Config as Source. See the documentation for usage guidelines.
Contribute Back
Is there a feature missing that you’d like to see, or found a bug that you have a fix for? Or do you have an idea or just interest in helping out in building the library? Let us know and we’d love to work with you. For a good starting point on where we are headed and feature ideas, take a look at our requested features and bugs.
Contribute guidance
Big or small we’d like to take your contributions back to help improve the Xbox Live PowerShell Module for everyone.
Having Trouble?
We’d love to get your review score, whether good or bad, but even more than that, we want to fix your problem. If you submit your issue as a Review, we won’t be able to respond to your problem and ask any follow-up questions that may be necessary. The most efficient way to do that is to open a an issue in our issue tracker.
Xbox Live GitHub projects
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.