48 lines
1.9 KiB
YAML
48 lines
1.9 KiB
YAML
steps:
|
|
# Step 1: Install root dependencies (includes workspaces)
|
|
- name: 'us-west1-docker.pkg.dev/gemini-code-dev/gemini-code-containers/gemini-code-builder'
|
|
entrypoint: 'npm'
|
|
args: ['install']
|
|
|
|
# Step 2: Update version in root package.json
|
|
- name: 'us-west1-docker.pkg.dev/gemini-code-dev/gemini-code-containers/gemini-code-builder'
|
|
entrypoint: 'bash'
|
|
args:
|
|
- -c # Use bash -c to allow for command substitution and string manipulation
|
|
- |
|
|
current_version=$(npm pkg get version | sed 's/"//g')
|
|
new_version="$${current_version}-$SHORT_SHA.$_REVISION"
|
|
npm pkg set "version=$${new_version}"
|
|
echo "Set root package.json version to: $${new_version}"
|
|
|
|
# Step 3: Run prerelease:dev to update workspace versions and dependencies
|
|
- name: 'us-west1-docker.pkg.dev/gemini-code-dev/gemini-code-containers/gemini-code-builder'
|
|
entrypoint: 'npm'
|
|
args: ['run', 'prerelease:dev'] # This will run prerelease:version and prerelease:deps
|
|
|
|
# Step 4: Authenticate for Docker and NPM
|
|
- name: 'us-west1-docker.pkg.dev/gemini-code-dev/gemini-code-containers/gemini-code-builder'
|
|
entrypoint: 'npm'
|
|
args: ['run', 'auth']
|
|
|
|
# Step 5: Run the master release script
|
|
- name: 'us-west1-docker.pkg.dev/gemini-code-dev/gemini-code-containers/gemini-code-builder'
|
|
entrypoint: 'npm'
|
|
args: ['run', 'publish:release']
|
|
env:
|
|
- 'GEMINI_SANDBOX=$_CONTAINER_TOOL'
|
|
- 'SANDBOX_IMAGE_REGISTRY=$_SANDBOX_IMAGE_REGISTRY'
|
|
- 'SANDBOX_IMAGE_NAME=$_SANDBOX_IMAGE_NAME'
|
|
- 'NPM_PUBLISH_TAG=$_NPM_PUBLISH_TAG'
|
|
|
|
options:
|
|
defaultLogsBucketBehavior: REGIONAL_USER_OWNED_BUCKET
|
|
dynamicSubstitutions: true
|
|
|
|
substitutions:
|
|
_REVISION: '0'
|
|
_SANDBOX_IMAGE_REGISTRY: 'us-west1-docker.pkg.dev/gemini-code-dev/gemini-code-containers'
|
|
_SANDBOX_IMAGE_NAME: 'gemini-cli-sandbox'
|
|
_NPM_PUBLISH_TAG: 'head'
|
|
_CONTAINER_TOOL: 'docker'
|