Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
play

GitHub Action

Publish Ansible role to Galaxy (test legacy-role)

1

Publish Ansible role to Galaxy (test legacy-role)

play

Publish Ansible role to Galaxy (test legacy-role)

Publish Ansible role to Galaxy

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Publish Ansible role to Galaxy (test legacy-role)

uses: itdoginfo/galaxy-action@1

Learn more about this action in itdoginfo/galaxy-action

Choose a version

Galaxy action

A GitHub action to publish your Ansible role to Galaxy.

Requirements

This action expects the following (default Ansible role) structure:

.
├── defaults
│   └── main.yml
├── handlers
│   └── main.yml
├── meta
│   └── main.yml
├── requirements.yml
├── tasks
│   └── main.yml
└── vars
    └── main.yml

Inputs

galaxy_api_key

The API Key for your personal Galaxy account. Found under https://galaxy.ansible.com/me/preferences . You can store this key in GitHub's Settings -> Secrets -> New repository secret. (Name: galaxy_api_key, Value: The token you copied from Galaxy.)

path

For repositories that have multiple roles, you can specify a (relative) path to go into before releasing the role. Defaults to ./. An example value could be my_role.

git_branch

You may specify a specific branch to push. The default is master.

Example usage

---
name: GitHub Action

on:
  - push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: galaxy
        uses: robertdebock/galaxy-action@1.2.0
        with:
          galaxy_api_key: ${{ secrets.galaxy_api_key }}

Here is a another example that uses molecule to test the role and this Galaxy action to release:

name: GitHub Action

on:
  - push

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
        with:
          path: "${{ github.repository }}"
      - name: molecule
        uses: robertdebock/molecule-action@4.0.7
  release:
    needs:
      - test
    runs-on: ubuntu-latest
    steps:
      - name: galaxy
        uses: robertdebock/galaxy-action@1.2.0
        with:
          galaxy_api_key: ${{ secrets.galaxy_api_key }}

When you have multiple roles in your repository, you can release one specific role by specifying a path:

---
name: GitHub Action

on:
  - push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: galaxy
        uses: robertdebock/galaxy-action@1.2.0
        with:
          galaxy_api_key: ${{ secrets.galaxy_api_key }}
          path: my_role
          git_branch: my_branch