mirror of
https://github.com/enso-org/enso.git
synced 2024-12-20 13:11:58 +03:00
56e3e1c991
close #11478 Changelog: - add: `run release deploy-ydoc-polyglot` and `run release deploy-ydoc-nodejs` commands that build Ydoc Docker images and push them to ECR repository - add: Ydoc native-image build for Linux PR checks - update: CI release configuration to deploy (push to ECR repo) Ydoc Docker images during the Nightly and Release steps
96 lines
3.4 KiB
YAML
96 lines
3.4 KiB
YAML
# This file is auto-generated. Do not edit it manually!
|
|
# Edit the enso_build::ci_gen module instead and run `cargo run --package enso-build-ci-gen`.
|
|
|
|
name: Generate a new version
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
designator:
|
|
description: What kind of release should be promoted.
|
|
required: true
|
|
type: choice
|
|
options:
|
|
- stable
|
|
- patch
|
|
- rc
|
|
- nightly
|
|
ydoc:
|
|
description: What kind of Ydoc image to build.
|
|
required: false
|
|
type: choice
|
|
default: nodejs
|
|
options:
|
|
- nodejs
|
|
- polyglot
|
|
workflow_call:
|
|
inputs:
|
|
designator:
|
|
description: What kind of release should be promoted.
|
|
required: true
|
|
type: string
|
|
ydoc:
|
|
description: What kind of Ydoc image to build.
|
|
required: false
|
|
type: string
|
|
default: nodejs
|
|
jobs:
|
|
enso-build-ci-gen-promote-release-job-linux-amd64:
|
|
name: Promote release (linux, amd64)
|
|
runs-on:
|
|
- self-hosted
|
|
- Linux
|
|
steps:
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
name: Installing wasm-pack
|
|
uses: jetli/wasm-pack-action@v0.4.0
|
|
with:
|
|
version: v0.12.1
|
|
- name: Expose Artifact API and context information.
|
|
uses: actions/github-script@v7
|
|
with:
|
|
script: "\n core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\n core.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\n core.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])\n console.log(context)\n "
|
|
- name: Checking out the repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
clean: false
|
|
submodules: recursive
|
|
- name: Build Script Setup
|
|
run: ./run --help || (git clean -ffdx && ./run --help)
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- if: "(contains(github.event.pull_request.labels.*.name, 'CI: Clean build required') || inputs.clean_build_required)"
|
|
name: Clean before
|
|
run: ./run git-clean
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- id: promote
|
|
run: ./run release promote ${{ inputs.designator }}
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- if: failure() && runner.os == 'Windows'
|
|
name: List files if failed (Windows)
|
|
run: Get-ChildItem -Force -Recurse
|
|
- if: failure() && runner.os != 'Windows'
|
|
name: List files if failed (non-Windows)
|
|
run: ls -lAR
|
|
- if: "(always()) && (contains(github.event.pull_request.labels.*.name, 'CI: Clean build required') || inputs.clean_build_required)"
|
|
name: Clean after
|
|
run: ./run git-clean
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
outputs:
|
|
ENSO_EDITION: ${{ steps.promote.outputs.ENSO_EDITION }}
|
|
ENSO_RELEASE_MODE: ${{ steps.promote.outputs.ENSO_RELEASE_MODE }}
|
|
ENSO_VERSION: ${{ steps.promote.outputs.ENSO_VERSION }}
|
|
release:
|
|
name: Release
|
|
needs:
|
|
- enso-build-ci-gen-promote-release-job-linux-amd64
|
|
uses: ./.github/workflows/release.yml
|
|
with:
|
|
version: ${{ needs.enso-build-ci-gen-promote-release-job-linux-amd64.outputs.ENSO_VERSION }}
|
|
ydoc: ${{ inputs.ydoc }}
|
|
secrets: inherit
|
|
env:
|
|
ENSO_BUILD_SKIP_VERSION_CHECK: "true"
|