Certificates and app distribution
Limit sensitive permissions to the steps that need them
HexVM provides dedicated physical nodes and remote access. Your team manages certificate requests, provisioning profiles, keychain permissions, release authorization, and final submission.
Workflow stage
Team responsibility
Node execution
Acceptance record
Certificate preparation
Define certificate purposes, protect export passwords, and restrict who can access them.
Import required materials in a controlled session; do not leave the keychain open indefinitely.
Certificate name, validity status, authorized members.
Provisioning profiles
Maintain profiles by app identifier and release environment, and remove expired versions.
Validate the match before building; stop archiving if validation fails.
App identifier, team information, profile version.
Signing and archiving
Approve protected branches and release jobs, and control build parameters.
Run archiving, export, and integrity checks, producing explicit exit codes.
Commit hash, build number, archive summary.
App submission
Review version information, privacy materials, screenshots, and release scope.
Prepare validated artifacts and the upload-tool environment.
Submitter, artifact version, submission result.
Keychain permissions
Unlock access only during signing and close it immediately when the job ends. Use separate access policies for different projects or environments so test jobs do not inherit release permissions.
Archive validation
Check the app identifier, signing identity, version, build number, and export result. If any field is unexpected, stop the upload instead of manually ignoring the error.
Before releasing a node
Revoke the Runner registration, remove certificates and provisioning profiles, clean sensitive fields from repository credentials, build directories, and logs, and confirm that required artifacts have been transferred.