Skip to content
CI/CD Inventory

usegalaxy-eu/ansible-galaxy-systemd (opens in new tab)

3 workflows

Triggers

pull_request push

Jobs

Jobs for CI
Job Runs on Steps Actions used
Lint ubuntu-latest 4
actions/checkout@v2 actions/setup-python@v2
Raw YAML
---
name: CI
'on':
  pull_request:
  push:
    branches:
      - master

defaults:
  run:
    working-directory: 'usegalaxy_eu.galaxy_systemd'

jobs:
  lint:
    name: Lint
    runs-on: ubuntu-latest
    steps:
      - name: Check out the codebase.
        uses: actions/checkout@v2
        with:
          path: 'usegalaxy_eu.galaxy_systemd'

      - name: Set up Python 3.
        uses: actions/setup-python@v2
        with:
          python-version: '3.x'

      - name: Install test dependencies.
        run: pip3 install yamllint

      - name: Lint code.
        run: |
          yamllint .

Last fetched:

Triggers

push

Jobs

Jobs for Release
Job Runs on Steps Actions used
Release ubuntu-latest 4
actions/checkout@v2 actions/setup-python@v2
Raw YAML
---
# This workflow requires a ANSIBLE_GALAXY_API_KEY secret present in the GitHub
# repository or organization.
#
# See: https://github.com/marketplace/actions/publish-ansible-role-to-galaxy
# See: https://github.com/ansible/galaxy/issues/46

name: Release

'on':
  push:
    tags:
      - '*'

jobs:
  release:
    name: Release
    runs-on: ubuntu-latest
    steps:
      - name: Check out the codebase.
        uses: actions/checkout@v2

      - name: Set up Python 3.
        uses: actions/setup-python@v2
        with:
          python-version: '3.x'

      - name: Install Ansible.
        run: pip3 install ansible-core

      - name: Trigger a new import on Galaxy.
        run: ansible-galaxy role import --api-key ${{ secrets.ANSIBLE_GALAXY_API_KEY }} $(echo ${{ github.repository }} | cut -d/ -f1) $(echo ${{ github.repository }} | cut -d/ -f2) --branch master

Last fetched:

Triggers

workflow_dispatch schedule

Jobs

Jobs for Automatic Regular Releases
Job Runs on Steps Actions used
Release ubuntu-latest 6
actions/checkout@v2 actions/setup-python@v2
Raw YAML
---
# This workflow requires a GALAXY_API_KEY secret present in the GitHub
# repository or organization.
#
# See: https://github.com/marketplace/actions/publish-ansible-role-to-galaxy
# See: https://github.com/ansible/galaxy/issues/46
#
# Note on the file name:
#   Reminding me (@hexylena) to make a release of a role was the last thing
#   @Slugger70 asked me our group chat. I'd forgotten to do it and he was
#   waiting on me for it, well, here's to you mate, none of us can forget to
#   make a point release again.

name: "Automatic Regular Releases"

on:
  workflow_dispatch:
  schedule:
    - cron: '0 0 * * 1'

jobs:
  release:
    name: Release
    runs-on: ubuntu-latest
    steps:
      - name: Check out the codebase.
        uses: actions/checkout@v2
        with:
          fetch-depth: 0

      - name: Set up Python 3.
        uses: actions/setup-python@v2
        with:
          python-version: '3.x'

      - name: Install Ansible.
        run: pip3 install ansible-base

      - name: Check for changes
        run: |
          MOST_RECENT_TAG=$(git describe --tags --abbrev=0)
          CHANGES=$(git diff ${MOST_RECENT_TAG} --name-only | wc -l)
          echo "Found ${CHANGES} files"
          git diff ${MOST_RECENT_TAG} --name-only
          echo "changed_files=${CHANGES}" >> $GITHUB_ENV

      - name: Create a new git tag
        run: |
          MOST_RECENT_TAG=$(git describe --tags --abbrev=0)
          major_minor=$(echo "$MOST_RECENT_TAG" | sed 's/\(.*\..*\.\)\(.*\)/\1/')
          patch=$(echo "$MOST_RECENT_TAG" | sed 's/\(.*\..*\.\)\(.*\)/\2/')
          newpatch=$(echo "$patch + 1" | bc)
          NEW_TAG="${major_minor}${newpatch}"
          echo "$MOST_RECENT_TAG -> $NEW_TAG"

          git config user.name github-actions
          git config user.email github-actions@github.com
          git tag "$NEW_TAG"
          git push --tags
        if: env.changed_files > 0

      # We have to do this step as GHA prevents triggering it's own actions, to prevent runaway loops.
      - name: Trigger a new import on Galaxy.
        run: ansible-galaxy role import --api-key ${{ secrets.GALAXY_API_KEY }} $(echo ${{ github.repository }} | cut -d/ -f1) $(echo ${{ github.repository }} | cut -d/ -f2) --branch main
        if: env.changed_files > 0

Last fetched: