Docs/use cases gcp/jjc #293
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
name: Prisma Cloud CLI Build Workflow | |
on: | |
push: | |
pull_request: | |
branches: | |
- main | |
jobs: | |
qa: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.8", "3.9", "3.10"] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | |
- name: Install pylint | |
run: | | |
pip install pylint | |
- name: Analysing the code with pylint | |
run: | | |
pylint $(git ls-files '*.py') | |
- name: Install flake8 | |
run: | | |
pip install flake8 | |
- name: Analysing the code with flake8 | |
run: | | |
# stop the build if there are Python syntax errors or undefined names | |
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics | |
# execute overall flake8 scan | |
flake8 . --count --statistics | |
test: | |
needs: qa | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: "3.8" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install build | |
pip install pylint | |
pip install -r requirements.txt | |
- name: Build package | |
run: python -m build | |
- name: Install package | |
run: pip install . | |
- name: Accept Support Message | |
run: | | |
mkdir ~/.prismacloud | |
touch ~/.prismacloud/.community_supported_accepted | |
- name: Check connectivity | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment check | |
- name: Check CWPP version # (previously exit code 1, should pass now) | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment check | |
- name: Check usage | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment usage > /dev/null | |
- name: Check defenders summary | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment defenders summary > /dev/null | |
- name: Check login events | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment logs audit --type login > /dev/null | |
- name: Check tags | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment tags > /dev/null | |
- name: Check cloud names | |
env: | |
PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
run: | | |
pc --config environment cloud names > /dev/null | |
# - name: Check alert list | |
# env: | |
# PC_URL: ${{ secrets.PC_SAAS_API_ENDPOINT }} | |
# PC_IDENTITY: ${{ secrets.PC_ACCESS_KEY }} | |
# PC_SECRET: ${{ secrets.PC_SECRET_KEY }} | |
# run: | | |
# pc --config environment alert list --unit hour --amount 1 > /dev/null |