mirror of
https://github.com/hcengineering/platform.git
synced 2026-08-21 03:42:24 +02:00
git-subtree-dir: foundations/net git-subtree-mainline:2b0d510202git-subtree-split:7722c95341
94 lines
2.9 KiB
YAML
94 lines
2.9 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: ['main']
|
|
tags:
|
|
- 'v0.7.*'
|
|
- 's0.7.*'
|
|
pull_request:
|
|
branches: ['main']
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 2
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 22
|
|
- name: Verify Change Logs
|
|
run: node common/scripts/install-run-rush.js change --verify
|
|
- name: Rush Install
|
|
run: node common/scripts/install-run-rush.js install
|
|
- name: Rush validate
|
|
run: node common/scripts/install-run-rush.js validate --verbose
|
|
|
|
publish:
|
|
runs-on: ubuntu-latest
|
|
if: startsWith(github.ref, 'refs/tags/v0.7.') || startsWith(github.ref, 'refs/tags/s0.7.')
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 2
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 22
|
|
- name: Install dependencies
|
|
run: node common/scripts/install-run-rush.js install
|
|
- name: Rush validate
|
|
run: node common/scripts/install-run-rush.js validate --verbose
|
|
- name: Publish packages
|
|
env:
|
|
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
run: node common/scripts/install-run-rush.js publish --include-all --publish
|
|
|
|
docker:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
- name: Configure docker
|
|
uses: docker/setup-docker-action@v4
|
|
with:
|
|
daemon-config: |
|
|
{
|
|
"features": {
|
|
"containerd-snapshotter": true
|
|
}
|
|
}
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 2
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 22
|
|
- name: Verify Change Logs
|
|
run: node common/scripts/install-run-rush.js change --verify
|
|
- name: Rush Install
|
|
run: node common/scripts/install-run-rush.js install
|
|
- name: Rush validate
|
|
run: node common/scripts/install-run-rush.js validate --verbose
|
|
|
|
- name: Docker build
|
|
run: |
|
|
node common/scripts/install-run-rush.js docker:build -v
|
|
docker builder prune -a -f
|
|
env:
|
|
DOCKER_CLI_HINTS: false
|
|
DOCKER_EXTRA: --platform=linux/amd64,linux/arm64
|
|
- name: Login to Docker Hub
|
|
if: ${{ github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v') || startsWith(github.ref, 'refs/tags/s') }}
|
|
uses: docker/login-action@v3
|
|
with:
|
|
username: hardcoreeng
|
|
password: ${{ secrets.DOCKER_ACCESS_TOKEN }}
|
|
- name: Docker push tag
|
|
if: ${{ startsWith(github.ref, 'refs/tags/v') || startsWith(github.ref, 'refs/tags/s') }}
|
|
run: |
|
|
echo Pushing release of tag ${{ github.ref }}
|
|
node common/scripts/install-run-rush.js docker:push -v
|