-
Notifications
You must be signed in to change notification settings - Fork 46
55 lines (46 loc) · 1.64 KB
/
galaxy.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
---
name: Build and Publish Collection to Ansible Galaxy
'on':
release:
types: [ published ]
workflow_dispatch:
defaults:
run:
working-directory: collections/ansible_collections/kewlfft/aur
jobs:
release:
runs-on: ubuntu-20.04
steps:
- name: Checkout git repo
uses: actions/checkout@v2
with:
path: collections/ansible_collections/kewlfft/aur
- name: Ensure that `version:` in `galaxy.yml` matches `GITHUB_REF`
id: version
run: |
[ "$(cat galaxy.yml | grep version: | awk '{print $2}')" = $(awk -F '/' '{print substr($3, 2)}' <<< ${GITHUB_REF}) ] || exit 1
echo ::set-output name=version::$(awk -F '/' '{print substr($3, 2)}' <<< ${GITHUB_REF})
- name: "Set up Python"
uses: actions/setup-python@v2
with:
python-version: "3.11"
- name: Generate cache keys
id: keys
run: |
echo ::set-output name=pip_cache_dir::$(pip cache dir)
# This ensures that the cache is invalidated after a week
echo ::set-output name=date::$(date +%Y_%g)
- name: Pip Cache
uses: actions/cache@v2
with:
path: ${{ steps.keys.outputs.pip_cache_dir }}
key: ansible-pip-${{ steps.keys.outputs.date }}
- name: Install pip packages
run: |
pip3 install -U pip
pip3 install wheel
pip3 install ansible-core
- name: Deploy collection
run: |
ansible-galaxy collection build
ansible-galaxy collection publish --api-key ${{ secrets.GALAXY_API_KEY }} "./kewlfft-aur-${{ steps.version.outputs.version }}.tar.gz"