chore(core): load limes-ui via npm #512
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# run local with act | |
# Note: the dummy.env file is not optional to prevent act to load the .env file | |
# this is super important because if a proxy is set in the .env file, | |
# because act will use the proxy and the tests will fail | |
# act -j test --env-file dummy.env --rm | |
name: CI Check | |
on: | |
pull_request: | |
types: | |
- opened | |
- synchronize | |
- reopened | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
container: | |
image: ruby:3.2 | |
services: | |
postgres: | |
image: postgres:16 | |
env: | |
POSTGRES_USER: postgres | |
POSTGRES_PASSWORD: "postgres" | |
POSTGRES_DB: postgres | |
POSTGRES_HOST_AUTH_METHOD: trust | |
ports: | |
- 5432:5432 | |
# needed because the postgres container does not provide a healthcheck | |
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 | |
steps: | |
- name: Setup Javascript (act only) | |
# install nodejs only if running locally with act | |
# otherwise the actions/setup-node@v4 will fails | |
# because it needs a installed nodejs to be able to run | |
if: ${{ env.ACT }} | |
run: | | |
apt-get update | |
apt-get install -y nodejs | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Gem cache | |
id: cache-bundle | |
uses: actions/cache@v4 | |
with: | |
path: vendor/bundle | |
key: bundle-${{ hashFiles('**/Gemfile.lock') }} | |
- name: Bundle install | |
id: bundle-install | |
env: | |
RAILS_ENV: test | |
run: | | |
gem install bundler | |
bundle install --jobs 4 --retry 3 --path vendor/bundle | |
- name: Setup DB, Run tests | |
id: test-rails | |
env: | |
POSTGRES_SERVICE_HOST: postgres | |
PGUSER: postgres | |
PGPORT: 5432 | |
RAILS_ENV: test | |
run: | | |
bin/rake db:create db:migrate | |
bundle exec rspec | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20.x" | |
registry-url: "https://npm.pkg.github.com" | |
scope: "@sapcc" | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.ELEKTRA_GITHUB_NPM_TOKEN }} | |
- name: Install yarn | |
run: npm install -g yarn | |
- name: Get yarn cache dir | |
id: yarn-cache-dir | |
run: echo "::set-output name=dir::$(yarn cache dir)" | |
- name: Yarn cache | |
id: cache-yarn | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.yarn-cache-dir.outputs.dir }} | |
key: yarn-${{ hashFiles('**/yarn.lock') }} | |
- name: Yarn install | |
id: test-js | |
run: | | |
yarn install | |
yarn test |