feat: semantic releases #258
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: Pull Request - Lint and Test Workflow | |
on: [pull_request] | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.9' | |
- uses: actions/cache@v3 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('setup.py') }} | |
- name: Install python dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e .[dev,deploy,test] | |
- name: Run pre-commit | |
run: pre-commit run --all-files | |
lint-conventional-pr: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: CondeNast/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
# if the PR contains a single commit, fail if the commit message and the PR title do not match | |
commitTitleMatch: "true" | |
ignoreCommits: "true" | |
test: | |
needs: [lint, lint-conventional-pr] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.9' | |
- uses: actions/cache@v3 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('setup.py') }} | |
- name: Install python dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e .[dev,deploy,test] | |
- name: Launch services | |
run: AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY=${{secrets.AWS_SECRET_ACCESS_KEY}} docker compose up --build -d | |
- name: Ingest Stac Items/Collection | |
run: | | |
./scripts/load-data-container.sh | |
- name: Sleep for 10 seconds | |
run: sleep 10s | |
shell: bash | |
- name: Integrations tests | |
run: python -m pytest .github/workflows/tests/ -vv -s | |
- name: Stop services | |
run: docker compose stop | |
predeploy: | |
needs: [test] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.9' | |
- name: Setup Node | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 17 | |
- name: Configure awscli | |
uses: aws-actions/configure-aws-credentials@v1 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws-region: us-west-2 | |
- uses: actions/cache@v3 | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
- name: Install CDK | |
run: npm install -g aws-cdk@2 | |
- uses: actions/cache@v3 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('setup.py') }} | |
- name: Install python dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e .[dev,deploy,test] | |
- name: Get dev environment configuration for develop branch | |
run: ./scripts/get-env.sh "veda-backend-uah-dev-env" | |
- name: Pre deployment CDK diff | |
run: | | |
echo $STAGE | |
cdk diff veda-backend-uah-dev |