diff --git a/.github/workflows/waf_test_rateBasedwithScopeDown.yml b/.github/workflows/waf_test_rateBasedwithScopeDown.yml new file mode 100644 index 00000000..348e83a1 --- /dev/null +++ b/.github/workflows/waf_test_rateBasedwithScopeDown.yml @@ -0,0 +1,76 @@ +name: RateBased-with-ScopeDown-Firewall + + +env: + AWS_REGION: eu-central-1 + AWS_ROLE: FirewallFactoryGithubPipelineRole + AWS_ACCOUNT: 859220371210 + +permissions: + id-token: write + contents: read + +# concurrency: +# group: test_envrionment +# cancel-in-progress: true + +on: + push: + branches: + - master + - pullrequests/vboufleur/fix/several + pull_request: + branches: + - master + paths: + - 'bin/**/*' + - 'lib/**/*' + - 'package*.json' +jobs: + deploy_production_main: + name: Test and deploy RateBased-with-ScopeDown Firewall + runs-on: ubuntu-latest + steps: + - name: ⬇️ Checkout + uses: actions/checkout@v3 + - name: πŸ“ Install Taskfile + run: | + npm install -g @go-task/cli + - name: ☊ Use Node.js + uses: actions/setup-node@v3 + with: + node-version: '21.x' + - name: πŸ’Ύ Cache Node.js modules + uses: actions/cache@v2 + with: + path: ~/.npm + key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.OS }}-node- + ${{ runner.OS }}- + - name: 🌐 Install CDK and typescript globally + run: | + npm i -g aws-cdk typescript ts-node @types/node yarn + npm link typescript + - name: πŸ“¦ Install Packages + run: | + npm install + - name: πŸ”‘ Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4.0.2 + env: + ACCOUNT_ID: ${{ env.AWS_ACCOUNT }} + with: + role-to-assume: arn:aws:iam::${{ env.ACCOUNT_ID }}:role/${{ env.AWS_ROLE }} + aws-region: ${{ env.AWS_REGION }} + role-session-name: GitHubActionsSession + mask-aws-account-id: false + - name: πŸš€ Set up QEMU + uses: docker/setup-qemu-action@v3 + - name: πŸ«™ Set up Docker Buildx + uses: docker/setup-buildx-action@v3.3.0 + - name: πŸ”₯ Deploy Firewall to AWS + run: | + task deploy config=rateBasedwithScopeDownTests + - name: πŸ—‘οΈ Remove Firewall from AWS + run: | + task destroy config=rateBasedwithScopeDownTests \ No newline at end of file diff --git a/README.md b/README.md index fdb5bc00..dd06a00d 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ If you want to learn more about the AWS Firewall Factory feel free to look at th | WAF Deployment - Only Managed Rule Groups | ![onlyManagedRuleGroups](https://github.com/globaldatanet/aws-firewall-factory/actions/workflows/waf_test_onlymanagedrulegroups.yml/badge.svg?branch=master) | | WAF Deployment - IpSets | ![IpSets](https://github.com/globaldatanet/aws-firewall-factory/actions/workflows/waf_test_ipSets.yml/badge.svg?branch=master) | | WAF Deployment - RegexPatternSets | ![regexPatternSets](https://github.com/globaldatanet/aws-firewall-factory/actions/workflows/waf_test_regexPatternSets.yml/badge.svg?branch=master) | - +| WAF Deployment - RateBasedwithScopeDown | ![rateBasedwithScopeDown](https://github.com/globaldatanet/aws-firewall-factory/actions/workflows/waf_test_rateBasedwithScopeDown.yml/badge.svg?branch=master) | ## πŸ¦ΈπŸΌβ€β™€οΈ Contributors