Skip to content

Commit

Permalink
Update CICD documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
kj4ezj committed Jul 7, 2024
1 parent f9376e3 commit c962640
Showing 1 changed file with 15 additions and 14 deletions.
29 changes: 15 additions & 14 deletions .github/workflows/ci.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# AWS CloudWatch Alarm Handler CI
This GitHub Actions workflow lints and tests the `aws-cloudwatch-alarm-handler` JavaScript project, then "builds" a `*.zip` file that can be uploaded directly to Amazon Web Services (AWS) [Lambda](https://aws.amazon.com/lambda).
# REX Staking Portal CI
This GitHub Actions workflow lints, tests, builds, and publishes the `rex-staking-portal` Svelte website.

### Index
1. [Triggers](#triggers)
Expand All @@ -10,8 +10,7 @@ This GitHub Actions workflow lints and tests the `aws-cloudwatch-alarm-handler`

## Triggers
This GitHub action will run under the following circumstances:
1. When code is pushed to the `main` branch.
1. When code is pushed to any branch with a name starting with `release/`.
1. When code is pushed to any branch.
1. When any tag is pushed.
1. On any workflow dispatch event, which is triggered manually using the "Workflow Dispatch" button in the Actions tab of the GitHub repository.

Expand All @@ -23,28 +22,30 @@ This workflow performs the following steps:
1. Attach Documentation:
1. Checkout the repo with no submodules or history.
1. Attach an annotation to the GitHub Actions build summary page containing this CI documentation.
1. Build `aws-cloudwatch-alarm-handler`:
1. Build `rex-staking-portal`:
> This is a build matrix with one or more nodeJS versions.
1. Checkout this repo with history.
1. Checkout this repo without history.
1. Setup nodeJS at the given major version.
1. Download project dependencies.
1. Lint the project.
1. Run unit and integration tests.
1. "Build" or, more accurately, pack a `*.zip` archive for upload to AWS.
1. Attach the `*.zip` file as an artifact.
1. Generate static site files and pack them in a `*.tar.gz` archive along with project and build metadata.
1. Attach the `*.tar.gz` file as an artifact.
1. Publish `rex-staking-portal`:
1. Checkout this repo without history.
1. Determine whether to perform a deployment or a dry-run, and authenticate to Amazon Web Services (AWS) accordingly.
1. Download build artifacts from the build matrix above.
1. Push (or simulate pushing) the build artifacts to the AWS S3 bucket for the REX Staking Portal.

## Outputs
This workflow produces the following outputs:
1. Archive for upload to AWS Lambda (`*.zip`).

> 📁 Due to actions/upload-artifact [issue 39](https://github.com/actions/upload-artifact/issues/39) which has been open for over _three years and counting_, the archives attached as artifacts will be zipped by GitHub when you download them such that you get a `*.zip` containing the `aws-cloudwatch-alarm-handler-*.zip`. There is nothing anyone can do about this except for Microsoft/GitHub.
1. Archive for upload to AWS S3 (`*.tar.gz`).

## See Also
- [Pipeline](https://github.com/eosnetworkfoundation/aws-cloudwatch-alarm-handler/actions/workflows/ci.yml)
- [Pipeline](https://github.com/eosnetworkfoundation/rex-staking-portal/actions/workflows/ci.yml)
- [Project Documentation](../../README.md)

For assistance with the CI system, please open an issue in this repo or reach out to the ENF Automation team.

---
> **_Legal Notice_**
Some content in this repository was generated in collaboration with one or more machine learning algorithms or weak artificial intelligence (AI). This notice is required in some countries.
> This repo contains assets created in collaboration with a large language model, machine learning algorithm, or weak artificial intelligence (AI). This notice is required in some countries.

0 comments on commit c962640

Please sign in to comment.