mirror of
https://github.com/Unleash/unleash.git
synced 2024-12-22 19:07:54 +01:00
8cdd68914e
## About the changes This is based on @nunogois suggestion to split the build in two, so we don't build the frontend every time we run `yarn` e2e frontend tests were forced to run by modifying frontend/README.md ### Important files Some github actions had to be updated to also build the frontend. The Dockerfile building our docker image was also looked into but it should work as is ## Discussion points This is a potentially risky operation as we might overlook something that requires building the frontend which might lead to invalid builds. We need to make sure when we do this we don't have any release planned.
54 lines
1.7 KiB
YAML
54 lines
1.7 KiB
YAML
name: 'Publish to npm'
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Publish to npm
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
registry-url: 'https://registry.npmjs.org'
|
|
cache: 'yarn'
|
|
- run: |
|
|
yarn install --frozen-lockfile
|
|
yarn --cwd ./frontend install --frozen-lockfile
|
|
- run: |
|
|
LATEST=$(npm show unleash-server version)
|
|
TAG=$(node scripts/npm-tag.js $LATEST)
|
|
npm publish --tag ${TAG:-latest}
|
|
env:
|
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
- uses: aws-actions/configure-aws-credentials@v1
|
|
with:
|
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
|
|
- name: Get the version
|
|
id: get_version
|
|
run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//}
|
|
- name: Publish static assets to S3
|
|
run: |
|
|
aws s3 cp frontend/build s3://getunleash-static/unleash/${{ steps.get_version.outputs.VERSION }} --recursive
|
|
- name: Trigger sync
|
|
uses: actions/github-script@v6
|
|
with:
|
|
github-token: ${{ secrets.UNLEASH_CI_BUILDER_GITHUB_TOKEN }}
|
|
script: |
|
|
await github.rest.actions.createWorkflowDispatch({
|
|
owner: 'ivarconr',
|
|
repo: 'unleash-enterprise',
|
|
workflow_id: 'continuous_version_sync.yaml',
|
|
ref: 'master'
|
|
})
|