build: add missing os matrix (#1928)

This commit is contained in:
Abraham Schilling 2020-09-01 21:22:36 +02:00 committed by Juan Picado
parent d981c1d435
commit 5e28d40f77
12 changed files with 192 additions and 302 deletions

View File

@ -7,6 +7,7 @@ end_of_line = lf
insert_final_newline = true insert_final_newline = true
# 2 space indentation # 2 space indentation
[{.,}*.{js,jsx,yml,yaml}] [{.,}*.{ts,tsx,js,jsx,yml,yaml}]
indent_style = space indent_style = space
indent_size = 2 indent_size = 2
quote_type = single

View File

@ -1,64 +1,74 @@
on: on:
schedule: schedule:
- cron: '0 3 * * 5' - cron: '0 3 * * 5'
pull_request: pull_request:
branches: branches:
- '**' - '**'
name: 'E2E Angular CLI with verdaccio' name: 'E2E Angular CLI with verdaccio'
jobs: jobs:
# todo: fix yarn global issue, cannot find ng # todo: fix yarn global issue, cannot find ng
# yarn: # yarn:
# name: 'yarn:angular example' # strategy:
# runs-on: ${{ matrix.os }} # fail-fast: false
# # matrix:
# steps: # os: [ubuntu-latest, windows-latest]
# - uses: actions/checkout@v2.3.3 #
# # name: '${{ matrix.os }} / yarn:angular example'
# - name: 'Use Node.js 10.x' # runs-on: ${{ matrix.os }}
# uses: actions/setup-node@v2.1.5 #
# with: # steps:
# node-version: 10.x # - uses: actions/checkout@v2.3.1
# - name: Install Dependencies #
# run: yarn install --pure-lockfile # - name: 'Use Node.js 10.x'
# - name: 'Run verdaccio in the background' # uses: actions/setup-node@v2.1.1
# run: | # with:
# nohup node ./scripts/run-verdaccio.js & # node-version: 10.x
# - name: 'Ping to verdaccio' # - name: Install Dependencies
# run: | # run: yarn install --pure-lockfile
# npm ping --registry http://localhost:4873 # - name: 'Run verdaccio in the background'
# - name: 'Running the integration test' # run: |
# run: | # nohup node ./scripts/run-verdaccio.js &
# source scripts/e2e-setup-ci.sh # - name: 'Ping to verdaccio'
# yarn init --yes # run: |
# # npm ping --registry http://localhost:4873
# yarn global add @angular/cli # - name: 'Running the integration test'
# which nodemon # run: |
# ng new verdaccio-angular --interactive=false # source scripts/e2e-setup-ci.sh
# # yarn init --yes
# cd verdaccio-angular #
# echo "registry=http://localhost:4873" > ~/.npmrc # yarn global add @angular/cli
# yarn add @angular-devkit/core@next @babel/preset-env @babel/core -D # which nodemon
# # ng new verdaccio-angular --interactive=false
# ng build --aot #
# cd verdaccio-angular
# echo "registry=http://localhost:4873" > ~/.npmrc
# yarn add @angular-devkit/core@next @babel/preset-env @babel/core -D
#
# ng build --aot
npm: npm:
name: 'npm:angular example' strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
name: '${{ matrix.os }} / npm:angular example'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v2.3.3 - uses: actions/checkout@v2.3.1
- name: 'Use Node.js 14.x' - name: 'Use Node.js 10.x'
uses: actions/setup-node@v2.1.5 uses: actions/setup-node@v2.1.1
with: with:
node-version: 14.x node-version: 10.x
- name: 'install latest npm' - name: 'install latest npm'
run: npm i -g npm@latest-6 run: npm i -g npm
- name: Install Dependencies - name: Install Dependencies
run: yarn install run: yarn install --pure-lockfile
- name: 'Run verdaccio in the background' - name: 'Run verdaccio in the background'
run: | run: |
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml & nohup node ./scripts/run-verdaccio.js &
- name: 'Ping to verdaccio' - name: 'Ping to verdaccio'
run: | run: |
npm ping --registry http://localhost:4873 npm ping --registry http://localhost:4873
@ -77,52 +87,20 @@ jobs:
cd verdaccio-angular cd verdaccio-angular
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
npm run ng build --aot
npm7:
name: 'npm7:angular example'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- name: 'Use Node.js 14.x'
uses: actions/setup-node@v2.1.5
with:
node-version: 14.x
- name: 'install latest npm'
run: npm i -g npm@next-7
- name: Install Dependencies
run: yarn install
- name: 'Run verdaccio in the background'
run: |
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
- name: 'Ping to verdaccio'
run: |
npm ping --registry http://localhost:4873
- name: 'Running the integration test'
run: |
source scripts/e2e-setup-ci.sh
echo "registry=http://localhost:4873" > ~/.npmrc
npm config set loglevel="silent"
npm config set fetch-retries="5"
npm config set fetch-retry-factor="50"
npm config set fetch-retry-mintimeout="20000"
npm config set fetch-retry-maxtimeout="80000"
npm install -g @angular/cli
ng new verdaccio-angular --interactive=false
cd verdaccio-angular
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
npm run ng build --aot npm run ng build --aot
# pnpm throws errors worth to check why # pnpm throws errors worth to check why
# pnpm: # pnpm:
# name: 'pnpm:angular example' # strategy:
# fail-fast: false
# matrix:
# os: [ubuntu-latest, windows-latest]
#
# name: '${{ matrix.os }} / pnpm:angular example'
# runs-on: ${{ matrix.os }} # runs-on: ${{ matrix.os }}
# #
# steps: # steps:
# - uses: actions/checkout@v2.3.3 # - uses: actions/checkout@v2.3.1
# #
# - name: 'Use Node.js 10.x' # - name: 'Use Node.js 10.x'
# uses: actions/setup-node@v2.1.1 # uses: actions/setup-node@v2.1.1

View File

@ -8,7 +8,12 @@ on:
name: 'E2E Gatsby.js CLI with verdaccio' name: 'E2E Gatsby.js CLI with verdaccio'
jobs: jobs:
npm: npm:
name: 'npm:gatsby example' strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
name: '${{ matrix.os }} / npm:gatsby example'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:

View File

@ -8,21 +8,26 @@ on:
name: 'E2E Jest with verdaccio' name: 'E2E Jest with verdaccio'
jobs: jobs:
yarn: yarn:
name: 'yarn:jest example' strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
name: '${{ matrix.os }} / yarn:jest example'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v2.3.3 - uses: actions/checkout@v2.3.1
- name: 'Use Node.js 12.x' - name: 'Use Node.js 10.x'
uses: actions/setup-node@v2.1.5 uses: actions/setup-node@v2.1.1
with: with:
node-version: 12.x node-version: 10.x
- name: Install Dependencies - name: Install Dependencies
run: yarn install run: yarn install --pure-lockfile
- name: 'Run verdaccio in the background' - name: 'Run verdaccio in the background'
run: | run: |
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml & nohup node ./scripts/run-verdaccio.js &
- name: 'Ping to verdaccio' - name: 'Ping to verdaccio'
run: | run: |
npm ping --registry http://localhost:4873 npm ping --registry http://localhost:4873
@ -38,91 +43,29 @@ jobs:
yarn add left-pad --registry http://localhost:4873 --verbose yarn add left-pad --registry http://localhost:4873 --verbose
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
yarn jest module.test.js yarn jest module.test.js
yarn2:
name: 'yarn2:jest example'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- name: 'Use Node.js 12.x'
uses: actions/setup-node@v2.1.5
with:
node-version: 12.x
- name: Install Dependencies
run: yarn install
- name: 'Run verdaccio in the background'
run: |
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
- name: 'Ping to verdaccio'
run: |
npm ping --registry http://localhost:4873
- name: 'Running the integration test'
run: |
source scripts/e2e-setup-ci.sh
yarn init --yes
yarn set version berry
yarn config set npmRegistryServer "http://localhost:4873"
yarn config set unsafeHttpWhitelist --json '["localhost"]'
yarn add jest@26.0.0
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
yarn jest pass.test.js
yarn add left-pad
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
yarn jest module.test.js
npm: npm:
name: 'npm:jest example' strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
name: '${{ matrix.os }} / npm:jest example'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v2.3.3 - uses: actions/checkout@v2.3.1
- name: 'Use Node.js 12.x' - name: 'Use Node.js 10.x'
uses: actions/setup-node@v2.1.5 uses: actions/setup-node@v2.1.1
with: with:
node-version: 12.x node-version: 10.x
- name: 'install latest npm'
run: npm i -g npm@latest-6
- name: Install Dependencies
run: yarn install
- name: 'Run verdaccio in the background'
run: |
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
- name: 'Ping to verdaccio'
run: |
npm ping --registry http://localhost:4873
- name: 'Running the integration test'
run: |
source scripts/e2e-setup-ci.sh
npm init --force
npm install jest --registry http://localhost:4873
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
yarn jest pass.test.js
yarn add left-pad --registry http://localhost:4873 --verbose
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
yarn jest module.test.js
npm7:
name: 'npm7:jest example'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- name: 'Use Node.js 12.x'
uses: actions/setup-node@v2.1.5
with:
node-version: 12.x
- name: 'install latest npm' - name: 'install latest npm'
run: npm i -g npm run: npm i -g npm
- name: Install Dependencies - name: Install Dependencies
run: yarn install run: yarn install --pure-lockfile
- name: 'Run verdaccio in the background' - name: 'Run verdaccio in the background'
run: | run: |
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml & nohup node ./scripts/run-verdaccio.js &
- name: 'Ping to verdaccio' - name: 'Ping to verdaccio'
run: | run: |
npm ping --registry http://localhost:4873 npm ping --registry http://localhost:4873
@ -138,22 +81,26 @@ jobs:
yarn add left-pad --registry http://localhost:4873 --verbose yarn add left-pad --registry http://localhost:4873 --verbose
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
yarn jest module.test.js yarn jest module.test.js
pnpm: pnpm:
name: 'pnpm:jest example' strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
name: '${{ matrix.os }} / pnpm:jest example'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v2.3.3 - uses: actions/checkout@v2.3.1
- name: 'Use Node.js 12.x' - name: 'Use Node.js 10.x'
uses: actions/setup-node@v2.1.5 uses: actions/setup-node@v2.1.1
with: with:
node-version: 12.x node-version: 10.x
- name: 'install latest pnpm' - name: 'install latest pnpm'
run: npm i -g pnpm run: npm i -g pnpm
- name: Install Dependencies - name: Install Dependencies
run: yarn install run: yarn install --pure-lockfile
- name: 'Run verdaccio in the background' - name: 'Run verdaccio in the background'
run: | run: |
nohup node ./scripts/run-verdaccio.js & nohup node ./scripts/run-verdaccio.js &
@ -172,38 +119,3 @@ jobs:
yarn add left-pad --registry http://localhost:4873 --verbose yarn add left-pad --registry http://localhost:4873 --verbose
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
yarn jest module.test.js yarn jest module.test.js
pnpm6:
name: 'pnpm6:jest example'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- name: 'Use Node.js 12.x'
uses: actions/setup-node@v2.1.5
with:
node-version: 12.x
- name: 'install latest pnpm'
run: sudo npm i pnpm@dev -g
- name: Install Dependencies
run: yarn install
- name: 'Run verdaccio in the background'
run: |
nohup node ./scripts/run-verdaccio.js &
- name: 'Ping to verdaccio'
run: |
pnpm ping --registry http://localhost:4873
- name: 'Running the integration test'
run: |
source scripts/e2e-setup-ci.sh
pnpm init --force
pnpm install jest --registry http://localhost:4873
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
yarn jest pass.test.js
yarn add left-pad --registry http://localhost:4873 --verbose
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
yarn jest module.test.js

View File

@ -2,12 +2,12 @@ name: Test local registry for js vulnerabilities
on: on:
schedule: schedule:
- cron: '0 4 * * 4' - cron: '0 4 * * 4'
jobs: jobs:
security: security:
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
steps: steps:
- name: Test for public javascript library vulnerabilities - name: Test for public javascript library vulnerabilities
uses: lirantal/is-website-vulnerable@1.15.10 uses: lirantal/is-website-vulnerable@1.15.10
with: with:
scan-url: "https://registry.verdaccio.org" scan-url: 'https://registry.verdaccio.org'

View File

@ -11,25 +11,25 @@ on:
jobs: jobs:
release: release:
name: Release name: Release
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
- name: Use Node (latest) - name: Use Node (latest)
uses: actions/setup-node@v1 uses: actions/setup-node@v1
with: with:
node_version: 13 node_version: 13
- name: Install - name: Install
run: yarn --frozen-lockfile run: yarn --frozen-lockfile
- name: Clean - name: Clean
run: yarn clean run: yarn clean
- name: Lint - name: Lint
run: yarn lint run: yarn lint
- name: Build - name: Build
run: yarn build run: yarn build
- name: Test - name: Test
run: yarn test run: yarn test
- name: Publish - name: Publish
run: | run: |
echo "//registry.verdaccio.org/:_authToken=${{ secrets.VERDACCIO_TOKEN }}" > .npmrc echo "//registry.verdaccio.org/:_authToken=${{ secrets.VERDACCIO_TOKEN }}" > .npmrc
git update-index --assume-unchanged .npmrc git update-index --assume-unchanged .npmrc
yarn publish:canary yarn publish:canary

View File

@ -1,4 +1,3 @@
name: Changesets name: Changesets
on: on:
@ -20,7 +19,7 @@ jobs:
# Update package versions from changesets. # Update package versions from changesets.
version: version:
timeout-minutes: 15 timeout-minutes: 15
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
if: github.ref == 'refs/heads/5.x' && github.repository == 'verdaccio/verdaccio' if: github.ref == 'refs/heads/5.x' && github.repository == 'verdaccio/verdaccio'
steps: steps:
- name: checkout code repository - name: checkout code repository

View File

@ -7,17 +7,16 @@ on:
pull_request: pull_request:
paths: paths:
- .github/workflows/ci-website.yml - .github/workflows/ci-website.yml
- "website/**" - 'website/**'
jobs: jobs:
ci: ci:
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
os: [ubuntu-latest, windows-latest] os: [ubuntu-latest, windows-latest]
node_version: [14] node_version: [14]
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:

View File

@ -4,25 +4,24 @@ on:
push: push:
branches: branches:
- 5.x - 5.x
- "changeset-release/5.x" - 'changeset-release/5.x'
pull_request: pull_request:
paths: paths:
- .github/workflows/ci.yml - .github/workflows/ci.yml
- "packages/**" - 'packages/**'
- "jest/**" - 'jest/**'
- "package.json" - 'package.json'
- "pnpm-workspace.yaml" - 'pnpm-workspace.yaml'
jobs: jobs:
ci: ci:
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
os: [ubuntu-latest, windows-latest] os: [ubuntu-latest, windows-latest]
node_version: [10, 12, 14] node_version: [10, 12, 14]
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:

View File

@ -1,4 +1,4 @@
name: "Code scanning - action" name: 'Code scanning - action'
on: on:
push: push:
@ -11,45 +11,43 @@ on:
jobs: jobs:
CodeQL-Build: CodeQL-Build:
runs-on: ubuntu-latest
# CodeQL runs on ubuntu-latest and windows-latest
runs-on: ${{ matrix.os }}
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v2.3.3 uses: actions/checkout@v2.3.1
with: with:
# We must fetch at least the immediate parents so that if this is # We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head. # a pull request then we can checkout the head.
fetch-depth: 2 fetch-depth: 2
# If this run was triggered by a pull request event, then checkout # If this run was triggered by a pull request event, then checkout
# the head of the pull request instead of the merge commit. # the head of the pull request instead of the merge commit.
- run: git checkout HEAD^2 - run: git checkout HEAD^2
if: ${{ github.event_name == 'pull_request' }} if: ${{ github.event_name == 'pull_request' }}
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
# Override language selection by uncommenting this and choosing your languages # Override language selection by uncommenting this and choosing your languages
# with: # with:
# languages: go, javascript, csharp, python, cpp, java # languages: go, javascript, csharp, python, cpp, java
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # Command-line programs to run using the OS shell.
# If this step fails, then you should remove it and run the build manually (see below) # 📚 https://git.io/JvXDl
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Command-line programs to run using the OS shell. # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# 📚 https://git.io/JvXDl # and modify them (or add more) to build your code if your project
# uses a compiled language
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines #- run: |
# and modify them (or add more) to build your code if your project # make bootstrap
# uses a compiled language # make release
#- run: | - name: Perform CodeQL Analysis
# make bootstrap uses: github/codeql-action/analyze@v1
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

View File

@ -12,20 +12,20 @@ on:
jobs: jobs:
testDocker: testDocker:
name: Test Docker Build name: Test Docker Build
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2.3.1 - uses: actions/checkout@v2.3.1
- name: Build - name: Build
run: npm run docker run: npm run docker
env: env:
VERDACCIO_BUILD_REGISTRY: https://registry.verdaccio.org VERDACCIO_BUILD_REGISTRY: https://registry.verdaccio.org
# testVerdaccio: # testVerdaccio:
# name: Test Verdaccio Publish # name: Test Verdaccio Publish
# runs-on: ${{ matrix.os }} # runs-on: ubuntu-latest
# steps: # steps:
# - uses: actions/checkout@v1 # - uses: actions/checkout@v1
# - name: Publish # - name: Publish
# uses: verdaccio/github-actions/publish@v0.4.0 # uses: verdaccio/github-actions/publish@v0.4.0
# with: # with:
# args: -d # args: -d

View File

@ -14,15 +14,14 @@ on:
jobs: jobs:
testDocker: testDocker:
name: Test Docker Build name: Test Docker Build
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
- name: Publish to GitHub Registry - name: Publish to GitHub Registry
uses: elgohr/Publish-Docker-Github-Action@master uses: elgohr/Publish-Docker-Github-Action@master
with: with:
name: docker.pkg.github.com/verdaccio/verdaccio/verdaccio name: docker.pkg.github.com/verdaccio/verdaccio/verdaccio
username: ${{secrets.DOCKER_USERNAME}} username: ${{secrets.DOCKER_USERNAME}}
password: ${{secrets.GITHUB_REGISTRY_TOKEN}} password: ${{secrets.GITHUB_REGISTRY_TOKEN}}
registry: docker.pkg.github.com registry: docker.pkg.github.com
tags: "5.x" tags: '5.x'