Unit-Testing using contentctl #641
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
name: validate-and-build | |
on: | |
pull_request: | |
types: [opened, reopened, synchronize] | |
jobs: | |
validate-and-build: | |
#Note that the CircleCI job used a Container. The way to do this with Github Actions | |
#is to first start up a Virtual Machine, then we can by following: | |
# https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idcontainer | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out the repository code | |
uses: actions/checkout@v3 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11' #Available versions here - https://github.com/actions/python-versions/releases easy to change/make a matrix/use pypy | |
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified | |
- name: Install System Packages | |
run: | | |
sudo apt update -qq | |
sudo apt install jq -qq | |
- name: Install Python Dependencies and ContentCTL and Atomic Red Team | |
run: | | |
pip install contentctl | |
git clone --depth=1 --single-branch --branch=master https://github.com/redcanaryco/atomic-red-team.git | |
- name: Running validate | |
run: | | |
contentctl validate | |
- name: Running build with enrichments | |
run: | | |
contentctl build --enrichments | |
mkdir artifacts | |
mv dist/DA-ESS-ContentUpdate-latest.tar.gz artifacts/ | |
- name: store_artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: content-latest | |
path: | | |
artifacts/DA-ESS-ContentUpdate-latest.tar.gz |