Skip to content

fix(local stack): add QUEUE_PUBLIC_KEY and compiler flags (#724) #8179

fix(local stack): add QUEUE_PUBLIC_KEY and compiler flags (#724)

fix(local stack): add QUEUE_PUBLIC_KEY and compiler flags (#724) #8179

Workflow file for this run

# SPDX-License-Identifier: Apache-2.0
# name of the action
name: ci
# trigger on pull_request or push events
on:
push:
pull_request:
env:
CI: 1
# pipeline to execute
jobs:
# ┌─┐┬ ┌┬┐ ┌─┐┌─┐┬─┐┌┬┐┌─┐┌┬┐
# ├┤ │ │││───├┤ │ │├┬┘│││├─┤ │
# └─┘┴─┘┴ ┴ └ └─┘┴└─┴ ┴┴ ┴ ┴
elm-format:
name: validate elm files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.npm
key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: node_modules
key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-modules-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.cache/Cypress
key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
cypress-${{ runner.os }}-bin-v2-
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version-file: '.nvmrc'
- name: install dependencies
run: npm ci --prefer-offline --no-audit
- name: install elm-format
run: npm i elm-format@0.8.5
- name: run elm-format
run: npm run lint:elm
# ┌─┐┬ ┌┬┐ ┌┬┐┌─┐┌─┐┌┬┐
# ├┤ │ │││───│ ├┤ └─┐ │
# └─┘┴─┘┴ ┴ ┴ └─┘└─┘ ┴
elm-test:
name: run elm tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.elm
key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }}
restore-keys: |
${{ runner.os }}-elm-v3-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.npm
key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: node_modules
key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-modules-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.cache/Cypress
key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
cypress-${{ runner.os }}-bin-v2-
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version-file: '.nvmrc'
- name: install dependencies
run: npm ci --prefer-offline --no-audit
- name: install elm-test
run: npm i elm-test@0.19.1-revision6
- name: run elm-test
run: npm run test
# ┬ ┬┌┐┌┌┬┐
# │ ││││ │
# ┴─┘┴┘└┘ ┴
lint:
name: lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.npm
key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: node_modules
key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-modules-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.cache/Cypress
key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
cypress-${{ runner.os }}-bin-v2-
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version-file: '.nvmrc'
- name: install dependencies
run: npm ci --prefer-offline --no-audit
- name: run linter
run: npm run lint
# ┌─┐┬ ┬┌─┐┬─┐┌─┐┌─┐┌─┐
# │ └┬┘├─┘├┬┘├┤ └─┐└─┐
# └─┘ ┴ ┴ ┴└─└─┘└─┘└─┘
integration:
name: run cypress tests
runs-on: ubuntu-latest
env:
VELA_API: 'http://localhost:8080'
TERM: xterm
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.elm
key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }}
restore-keys: |
${{ runner.os }}-elm-v3-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.npm
key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: node_modules
key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-modules-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.cache/Cypress
key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
cypress-${{ runner.os }}-bin-v2-
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version-file: '.nvmrc'
- name: install dependencies
run: npm ci --prefer-offline --no-audit
- name: run cypress tests
run: npm run test:cy
# ┌─┐┬ ┬┌┐ ┬ ┬┌─┐┬ ┬
# ├─┘│ │├┴┐│ │└─┐├─┤
# ┴ └─┘└─┘┴─┘┴└─┘┴ ┴
publish:
name: build and push to docker
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'go-vela/ui'
needs: [lint, elm-format, elm-test, integration]
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.elm
key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }}
restore-keys: |
${{ runner.os }}-elm-v3-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: ~/.npm
key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-v2-
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3
with:
path: node_modules
key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-modules-v2-
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version-file: '.nvmrc'
# ┌┐ ┬ ┬┬┬ ┌┬┐
# ├┴┐│ │││ ││
# └─┘└─┘┴┴─┘─┴┘
- name: install dependencies
run: npm ci --prefer-offline --no-audit
- name: run development build
run: npm run build
# ┌┬┐┌─┐┌─┐┬┌─┌─┐┬─┐
# │││ ││ ├┴┐├┤ ├┬┘
# ─┴┘└─┘└─┘┴ ┴└─┘┴└─
- name: push to docker
uses: elgohr/Publish-Docker-Github-Action@43dc228e327224b2eda11c8883232afd5b34943b # v5
with:
name: target/vela-ui
cache: true
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}