mirror of
https://github.com/aws-actions/configure-aws-credentials.git
synced 2026-09-02 05:55:10 +09:00
feat: Build and integ test scripts for pipeline
This commit is contained in:
@@ -0,0 +1,14 @@
|
|||||||
|
version: 0.2
|
||||||
|
|
||||||
|
phases:
|
||||||
|
install:
|
||||||
|
runtime-versions:
|
||||||
|
nodejs: 10
|
||||||
|
build:
|
||||||
|
commands:
|
||||||
|
# Run unit tests
|
||||||
|
- npm ci
|
||||||
|
- npm run test
|
||||||
|
artifacts:
|
||||||
|
files:
|
||||||
|
- '**/*'
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
version: 0.2
|
||||||
|
|
||||||
|
phases:
|
||||||
|
install:
|
||||||
|
runtime-versions:
|
||||||
|
nodejs: 10
|
||||||
|
build:
|
||||||
|
commands:
|
||||||
|
# Validate that the dist/ folder has the latest code packaged.
|
||||||
|
# If there are unpackaged changes, this build will fail.
|
||||||
|
# The GitHub Actions 'package' workflow will eventually run
|
||||||
|
# and will sync the dist folder, which will re-trigger this build.
|
||||||
|
- npm ci
|
||||||
|
- npm run package
|
||||||
|
- git diff --exit-code dist/index.js
|
||||||
|
artifacts:
|
||||||
|
files:
|
||||||
|
- '**/*'
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
version: 0.2
|
||||||
|
|
||||||
|
env:
|
||||||
|
variables:
|
||||||
|
GITHUB_HUB_CLI_VERSION: 2.13.0
|
||||||
|
|
||||||
|
phases:
|
||||||
|
install:
|
||||||
|
runtime-versions:
|
||||||
|
nodejs: 10
|
||||||
|
build:
|
||||||
|
commands:
|
||||||
|
# Install hub CLI
|
||||||
|
- wget https://github.com/github/hub/releases/download/v$GITHUB_HUB_CLI_VERSION/hub-linux-amd64-$GITHUB_HUB_CLI_VERSION.tgz
|
||||||
|
- tar -xzvf hub-linux-amd64-$GITHUB_HUB_CLI_VERSION.tgz && sudo mv hub-linux-amd64-$GITHUB_HUB_CLI_VERSION/bin/hub /usr/local/bin
|
||||||
|
|
||||||
|
# Configure git client
|
||||||
|
- git config user.name "CodeBuild Integration Test"
|
||||||
|
- git config user.email $COMMIT_EMAIL_ADDRESS
|
||||||
|
- git config credential.helper "store --file=.git/credentials"
|
||||||
|
- echo "https://${GITHUB_TOKEN}:@github.com" > .git/credentials
|
||||||
|
|
||||||
|
# Run integration tests
|
||||||
|
- ./run_integ_test.sh
|
||||||
Executable
+25
@@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
# Retrieve the action commit ID to test
|
||||||
|
ACTION_GIT_COMMIT_ID=`git rev-parse HEAD`
|
||||||
|
|
||||||
|
# Update the integ test action workflow file with the latest action commit ID
|
||||||
|
git checkout integ-tests
|
||||||
|
sed -i 's|aws-actions/configure-aws-credentials@v1|aws-actions/configure-aws-credentials@$ACTION_GIT_COMMIT_ID|g' test-workflow.yml
|
||||||
|
cp test-workflow.yml .github/workflows
|
||||||
|
git add .github/workflows
|
||||||
|
git commit -m "Test commit $ACTION_GIT_COMMIT_ID"
|
||||||
|
|
||||||
|
# Trigger the action workflow
|
||||||
|
git push origin integ-tests
|
||||||
|
|
||||||
|
# Validate that the action workflow succeeds
|
||||||
|
# Exit codes: success = 0; failure = 1; pending = 2; no status = 3
|
||||||
|
while hub ci-status; [ $? -ge 2 ] do
|
||||||
|
echo "waiting for test workflow to complete..."
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
|
||||||
|
hub ci-status
|
||||||
Reference in New Issue
Block a user