Add connect-dedicated build step #2994
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
# This workflow will do a clean install of node dependencies, build the source code and run tests with node | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions | |
name: CI | |
on: [push] | |
jobs: | |
notification_build: | |
name: Notification Module Build and Deployment | |
concurrency: notification_build | |
runs-on: ubuntu-latest | |
env: | |
ADYEN_INTEGRATION_CONFIG: ${{ secrets.ADYEN_INTEGRATION_CONFIG }} | |
CI_NOTIFICATION_URL: ${{ secrets.CI_NOTIFICATION_URL }} | |
defaults: | |
run: | |
working-directory: notification | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js 16.x | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '16.x' | |
- run: npm ci | |
- run: npx lockfile-lint --path package-lock.json --allowed-schemes "https:" "git+https:" --allowed-hosts npm github.com | |
- run: npm run check | |
- name: prepare notifications folder | |
run: | | |
echo $ADYEN_INTEGRATION_CONFIG >> .notificationrc | |
mkdir -p sources && cp index.googleFunction.js index.js | |
cp -R {index.js,.notificationrc,src,resources,package.json} sources | |
rm .notificationrc | |
shell: bash | |
- name: gcloud auth | |
uses: google-github-actions/auth@v1 | |
with: | |
credentials_json: ${{ secrets.GCP_CREDENTIALS }} | |
- name: gcloud sdk | |
uses: google-github-actions/setup-gcloud@v1.1.1 | |
- run: npm run unit | |
- name: gcloud functions deploy | |
run: | | |
gcloud functions deploy notification-ci \ | |
--region europe-west3 \ | |
--source sources \ | |
--entry-point notificationTrigger \ | |
--runtime nodejs16 \ | |
--trigger-http \ | |
--allow-unauthenticated | |
extension_build: | |
name: Extension Module | |
concurrency: extension_build | |
needs: notification_build | |
runs-on: ubuntu-latest | |
env: | |
ADYEN_INTEGRATION_CONFIG: ${{ secrets.ADYEN_INTEGRATION_CONFIG }} | |
CI_EXTENSION_BASE_URL: ${{ secrets.CI_EXTENSION_BASE_URL }} | |
CI_NOTIFICATION_URL: ${{ secrets.CI_NOTIFICATION_URL }} | |
defaults: | |
run: | |
working-directory: extension | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js 16.x | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '16.x' | |
- run: npm ci | |
- run: npx lockfile-lint --path package-lock.json --allowed-schemes "https:" "git+https:" --allowed-hosts npm github.com | |
- run: npm run check | |
- name: prepare extensions folder | |
run: | | |
echo $ADYEN_INTEGRATION_CONFIG >> .extensionrc | |
mkdir -p sources && cp index.googleFunction.js index.js | |
cp -R {index.js,.extensionrc,src,resources,package.json} sources | |
rm .extensionrc | |
shell: bash | |
- name: gcloud auth | |
uses: google-github-actions/auth@v1 | |
with: | |
credentials_json: ${{ secrets.GCP_CREDENTIALS }} | |
- name: gcloud sdk | |
uses: google-github-actions/setup-gcloud@v1.1.1 | |
- name: gcloud functions deploy | |
run: | | |
gcloud functions deploy extension-ci \ | |
--region europe-west3 \ | |
--source sources \ | |
--entry-point extensionTrigger \ | |
--runtime nodejs16 \ | |
--trigger-http \ | |
--allow-unauthenticated | |
- run: npm run test-ci | |
notification_test: | |
name: Test for Notification Module | |
concurrency: notification_test | |
needs: extension_build | |
runs-on: ubuntu-latest | |
env: | |
ADYEN_INTEGRATION_CONFIG: ${{ secrets.ADYEN_INTEGRATION_CONFIG }} | |
CI_NOTIFICATION_URL: ${{ secrets.CI_NOTIFICATION_URL }} | |
defaults: | |
run: | |
working-directory: notification | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js 16.x | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '16.x' | |
- run: npm ci | |
- run: npx lockfile-lint --path package-lock.json --allowed-schemes "https:" "git+https:" --allowed-hosts npm github.com | |
- run: npm run test-ci |