Skip to content

<bot> update dependencies*.log files(s) #68

<bot> update dependencies*.log files(s)

<bot> update dependencies*.log files(s) #68

Workflow file for this run

name: ci/cd
on:
push:
branches: [ '**' ]
tags-ignore: [ '**' ]
jobs:
py-versions:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.versions.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- id: versions
uses: WIPACrepo/wipac-dev-py-versions-action@v2.5
############################################################################
# LINTERS
############################################################################
flake8:
needs: [ py-versions ]
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
py3: ${{ fromJSON(needs.py-versions.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py3 }}
- uses: WIPACrepo/wipac-dev-flake8-action@v1.3
with:
max-complexity: 10 # ideal is ~10-15
mypy:
needs: [ py-versions ]
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
py3: ${{ fromJSON(needs.py-versions.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py3 }}
- uses: WIPACrepo/wipac-dev-mypy-action@v2.0
############################################################################
# PACKAGING
############################################################################
# writable-branch-detect:
# runs-on: ubuntu-latest
# outputs:
# OKAY: ${{ steps.detect.outputs.OKAY }}
# steps:
# - name: is this a bot-writable branch?
# id: detect
# # dependabot can't access normal secrets
# # & don't run non-branch triggers (like tags)
# # & we don't want to trigger an update on PR's merge to main/master/default (which is a branch)
# run: |
# set -euo pipefail
# echo "now: $(date -u +"%Y-%m-%dT%H:%M:%S.%3N")"
# if [[ \
# ${{github.actor}} != 'dependabot[bot]' && \
# ${{github.ref_type}} == 'branch' && \
# ${{format('refs/heads/{0}', github.event.repository.default_branch)}} != ${{github.ref}} \
# ]]; then
# echo "OKAY=true" >> "$GITHUB_OUTPUT"
# echo "yes, this branch is compatible"
# else
# echo "OKAY=false" >> "$GITHUB_OUTPUT"
# echo "no, this branch is incompatible"
# fi
py-setup:
# needs: [ writable-branch-detect ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# if: needs.writable-branch-detect.outputs.OKAY == 'true'
with:
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- uses: WIPACrepo/wipac-dev-py-setup-action@scm
# if: needs.writable-branch-detect.outputs.OKAY == 'true'
with:
pypi_name: 'wipac-dev-actions-testbed'
python_min: 3.12
author: WIPAC Developers
author_email: developers@icecube.wisc.edu
keywords_comma: "WIPAC, CI/CD, gitops, testbed"
auto_mypy_option: True
py-dependencies:
# needs: [ writable-branch-detect ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# if: needs.writable-branch-detect.outputs.OKAY == 'true'
with:
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- uses: WIPACrepo/wipac-dev-py-dependencies-action@v2.1
# if: needs.writable-branch-detect.outputs.OKAY == 'true'
with:
use_directory: true
############################################################################
# TESTS
############################################################################
############################################################################
# TAG NEW VERSION
############################################################################
tag-new-version:
# only run on main/master/default
if: format('refs/heads/{0}', github.event.repository.default_branch) == github.ref
needs: [
py-versions,
flake8,
mypy,
py-setup,
py-dependencies
]
runs-on: ubuntu-latest
concurrency: tag-new-version # prevent any possible race conditions
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # required to see tags and commits
ref: ${{ github.sha }} # in case 'ref' (arg default) has been updated since start
- uses: actions/setup-python@v5
with:
python-version: "${{ fromJSON(needs.py-versions.outputs.matrix)[0] }}"
- uses: WIPACrepo/wipac-dev-next-version-action@v1.0
id: next-version
with:
force-patch-if-no-commit-token: true
ignore-paths: |
.gitignore
assets/**
dependencies-logs/**
resources/foo/**
- name: Tag New Version
if: steps.next-version.outputs.version != ''
run: |
set -euo pipefail
echo "now: $(date -u +"%Y-%m-%dT%H:%M:%S.%3N")"
git tag ${{ steps.next-version.outputs.version }}
git push origin ${{ steps.next-version.outputs.version }}