Skip to content

Commit f1dadcd

Browse files
authored
Merge pull request #2 from enverus-cts/move_workflow_files_to_master
Move workflow files to master
2 parents a89530e + 001a9f1 commit f1dadcd

File tree

4 files changed

+178
-0
lines changed

4 files changed

+178
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Enverus Lambda Syncer
2+
on:
3+
push:
4+
branches:
5+
- develop
6+
pull_request:
7+
paths:
8+
- .github/workflows/lambda-runner-binaries-syncer.yml
9+
- "modules/runner-binaries-syncer/lambdas/runner-binaries-syncer/**"
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
container: node:14
15+
defaults:
16+
run:
17+
working-directory: modules/runner-binaries-syncer/lambdas/runner-binaries-syncer
18+
19+
steps:
20+
- uses: actions/checkout@v3
21+
- name: Install dependencies
22+
run: yarn install
23+
- name: Run prettier
24+
run: yarn format-check
25+
- name: Run linter
26+
run: yarn lint
27+
- name: Run tests
28+
run: yarn test
29+
- name: Build distribution
30+
run: yarn build
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Enverus Lambda Runners
2+
on:
3+
push:
4+
branches:
5+
- develop
6+
pull_request:
7+
paths:
8+
- .github/workflows/lambda-runners.yml
9+
- "modules/runners/lambdas/runners/**"
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
container: node:14
15+
defaults:
16+
run:
17+
working-directory: modules/runners/lambdas/runners
18+
19+
steps:
20+
- uses: actions/checkout@v3
21+
- name: Install dependencies
22+
run: yarn install
23+
- name: Run prettier
24+
run: yarn format-check
25+
- name: Run linter
26+
run: yarn lint
27+
- name: Run tests
28+
run: yarn test
29+
- name: Run two tests in isolation
30+
run: |
31+
yarn run test src/scale-runners/scale-up.test.ts -t 'scaleUp with GHES on org level creates a runner with labels in s specific group' --coverage=false
32+
yarn run test src/scale-runners/scale-up.test.ts -t 'scaleUp with public GH on org level creates a runner with labels in s specific group' --coverage=false
33+
- name: Build distribution
34+
run: yarn build
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Enverus Lambda Webhook
2+
on:
3+
push:
4+
branches:
5+
- develop
6+
pull_request:
7+
paths:
8+
- .github/workflows/lambda-webhook.yml
9+
- "modules/webhook/lambdas/webhook/**"
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
container: node:14
15+
defaults:
16+
run:
17+
working-directory: modules/webhook/lambdas/webhook
18+
19+
steps:
20+
- uses: actions/checkout@v3
21+
- name: Install dependencies
22+
run: yarn install
23+
- name: Run prettier
24+
run: yarn format-check
25+
- name: Run linter
26+
run: yarn lint
27+
- name: Run tests
28+
run: yarn test
29+
- name: Build distribution
30+
run: yarn build

.github/workflows/enverus-release.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
name: Enverus Release build
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
- develop
8+
workflow_dispatch:
9+
10+
jobs:
11+
prepare:
12+
name: Create dist
13+
runs-on: ubuntu-latest
14+
container: node:14
15+
strategy:
16+
matrix:
17+
lambda: ["modules/webhook/lambdas/webhook", "modules/runner-binaries-syncer/lambdas/runner-binaries-syncer", "modules/runners/lambdas/runners"]
18+
steps:
19+
- name: Extract lambda name
20+
id: lambda
21+
env:
22+
LAMBDA: ${{ matrix.lambda }}
23+
run: echo ::set-output name=name::${LAMBDA##*/}
24+
- uses: actions/checkout@v3
25+
- name: Add zip
26+
run: apt update && apt install zip
27+
- name: Build dist
28+
working-directory: ${{ matrix.lambda }}
29+
run: yarn install && yarn run test && yarn dist
30+
- uses: actions/upload-artifact@v2
31+
with:
32+
name: ${{ steps.lambda.outputs.name }}
33+
path: ${{ matrix.lambda }}/${{ steps.lambda.outputs.name }}.zip
34+
retention-days: 1
35+
36+
release:
37+
name: release
38+
runs-on: ubuntu-latest
39+
needs:
40+
prepare
41+
steps:
42+
- uses: actions/checkout@v3
43+
with:
44+
fetch-depth: 0
45+
persist-credentials: false
46+
- uses: actions/download-artifact@v2
47+
with:
48+
name: webhook
49+
path: artifacts
50+
- uses: actions/download-artifact@v2
51+
with:
52+
name: runners
53+
path: artifacts
54+
- uses: actions/download-artifact@v2
55+
with:
56+
name: runner-binaries-syncer
57+
path: artifacts
58+
59+
- name: Get installation token
60+
uses: npalm/[email protected]
61+
id: app-token
62+
with:
63+
appId: ${{ secrets.FOREST_RELEASER_APP_ID }}
64+
appPrivateKeyBase64: ${{ secrets.FOREST_RELEASER_APP_PRIVATE_KEY_BASE64 }}
65+
appInstallationType: repo
66+
appInstallationValue: ${{ github.repository }}
67+
68+
- name: Dry run release
69+
if: github.event_name != 'pull_request'
70+
env:
71+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Read only token
72+
run: |
73+
cp .release/* .
74+
yarn
75+
yarn release -d --repositoryUrl https://x-access-token:[email protected]/$GITHUB_REPOSITORY.git
76+
77+
- name: Release
78+
if: github.event_name != 'pull_request' && contains('refs/heads/main', github.ref)
79+
env:
80+
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
81+
run: |
82+
cp .release/* .
83+
yarn
84+
yarn release --repositoryUrl https://x-access-token:[email protected]/$GITHUB_REPOSITORY.git

0 commit comments

Comments
 (0)