Skip to content
CI/CD Inventory

galaxyproject/ansible-role-cvmfsexec (opens in new tab)

3 workflows

Triggers

pull_request_target push

Jobs

Jobs for ansible-lint
Job Runs on Steps Actions used
ansible-lint ubuntu-latest 3
actions/checkout@v3 actions/setup-python@v3 reviewdog/action-ansiblelint@v1
Raw YAML
---
name: ansible-lint
on: [pull_request_target, push]

jobs:
  ansible-lint:
    name: ansible-lint
    runs-on: ubuntu-latest
    steps:
      - name: Check out the codebase.
        uses: actions/checkout@v3

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

      - name: Run ansible-lint.
        uses: reviewdog/action-ansiblelint@v1
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          reporter: github-pr-review
          filter_mode: nofilter

Last fetched:

Triggers

push

Jobs

Jobs for Release (by Tag Push)
Job Runs on Steps Actions used
Release ubuntu-latest 4
actions/checkout@v3 actions/setup-python@v3
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

name: Release (by Tag Push)

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

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

      - name: Set up Python 3.
        uses: actions/setup-python@v3
        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.GALAXY_API_KEY }} $(echo ${{ github.repository }} | cut -d/ -f1) $(echo ${{ github.repository }} | cut -d/ -f2) --branch main

Last fetched:

Triggers

workflow_dispatch schedule

Jobs

Jobs for Automatic Regular Releases
Job Runs on Steps Actions used
Release ubuntu-latest 6
actions/checkout@v3 actions/setup-python@v3
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@v3
        with:
          fetch-depth: 0

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

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

      - name: Check for changes
        run: |
          LATEST_TAG=$(git describe --tags --abbrev=0)
          echo "The last released tag was ${LATEST_TAG}"
          CHANGES=$(git diff ${LATEST_TAG} --name-only | wc -l)
          echo "Found ${CHANGES} changed files"
          git diff ${LATEST_TAG} --name-only
          echo "changed_files=${CHANGES}" >> $GITHUB_ENV

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

          git config user.name github-actions
          git config user.email github-actions@github.com
          git tag "$NEW_TAG"
          git push --tags
          echo "Creating new tag $NEW_TAG" >> $GITHUB_STEP_SUMMARY
        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: |
          org=$(echo ${{ github.repository }} | cut -d/ -f1)
          repo=$(echo ${{ github.repository }} | cut -d/ -f2)
          key=${{ secrets.GALAXY_API_KEY }}
          ansible-galaxy role import --api-key $key $org $repo --branch main
        if: env.changed_files > 0

Last fetched: