Skip to content

Commit 6435e0f

Browse files
author
jordanbreen28
committed
(CONT-704) - Implement reusable workflows
This commit introduces reusable worklfows
1 parent 9f93612 commit 6435e0f

File tree

9 files changed

+157
-40
lines changed

9 files changed

+157
-40
lines changed

.github/workflows/ci.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: "ci"
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- "main"
7+
workflow_dispatch:
8+
9+
jobs:
10+
spec:
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
ruby_version:
15+
- "2.5"
16+
- "2.7"
17+
puppet_gem_version:
18+
- '~> 6.0'
19+
- '~> 7.0'
20+
name: "spec (ruby ${{ matrix.ruby_version }} | puppet ${{matrix.puppet_gem_version}})"
21+
uses: "puppetlabs/cat-github-actions/.github/workflows/gem_ci.yml@main"
22+
secrets: "inherit"
23+
with:
24+
ruby_version: ${{ matrix.ruby_version }}
25+
puppet_gem_version: ${{ matrix.puppet_gem_version }}
26+
27+
acceptance:
28+
needs: "spec"
29+
strategy:
30+
fail-fast: false
31+
matrix:
32+
os:
33+
- "ubuntu-latest"
34+
- "windows-2019"
35+
ruby_version:
36+
- "2.5"
37+
- "2.7"
38+
name: "acceptance (${{ matrix.os }} | ruby ${{ matrix.ruby_version }})"
39+
uses: "puppetlabs/cat-github-actions/.github/workflows/gem_acceptance.yml@main"
40+
secrets: "inherit"
41+
with:
42+
ruby_version: ${{ matrix.ruby_version }}
43+
rake_task: 'acceptance:local_parallel'
44+
runs_on: ${{ matrix.os }}

.github/workflows/labeller.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: community-labeller
2+
3+
on:
4+
issues:
5+
types:
6+
- "opened"
7+
pull_request_target:
8+
types:
9+
- "opened"
10+
11+
jobs:
12+
label:
13+
runs-on: "ubuntu-latest"
14+
steps:
15+
16+
- uses: "puppetlabs/community-labeller@v0"
17+
name: "Label issues or pull requests"
18+
with:
19+
label_name: "community"
20+
label_color: '5319e7'
21+
org_membership: "puppetlabs"
22+
token: ${{ secrets.IAC_COMMUNITY_LABELER }}

.github/workflows/main.yml

Lines changed: 0 additions & 37 deletions
This file was deleted.

.github/workflows/nightly.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: "nightly"
2+
3+
on:
4+
schedule:
5+
- cron: "0 0 * * *"
6+
workflow_dispatch:
7+
8+
jobs:
9+
spec:
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
ruby_version:
14+
- "2.5"
15+
- "2.7"
16+
puppet_gem_version:
17+
- '~> 6.0'
18+
- '~> 7.0'
19+
name: "spec (ruby ${{ matrix.ruby_version }} | puppet ${{matrix.puppet_gem_version}})"
20+
uses: "puppetlabs/cat-github-actions/.github/workflows/gem_ci.yml@main"
21+
secrets: "inherit"
22+
with:
23+
ruby_version: ${{ matrix.ruby_version }}
24+
25+
acceptance:
26+
needs: "spec"
27+
strategy:
28+
fail-fast: false
29+
matrix:
30+
os:
31+
- "ubuntu-latest"
32+
- "windows-2019"
33+
ruby_version:
34+
- "2.5"
35+
- "2.7"
36+
name: "acceptance (ruby ${{ matrix.ruby_version }} | ${{ matrix.os }})"
37+
uses: "puppetlabs/cat-github-actions/.github/workflows/gem_acceptance.yml@main"
38+
secrets: "inherit"
39+
with:
40+
ruby_version: ${{ matrix.ruby_version }}
41+
rake_task: 'acceptance:local_parallel'
42+
runs_on: ${{ matrix.os }}

.github/workflows/release.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: "release"
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
target:
7+
description: "The target for the release. This can be a commit sha or a branch."
8+
required: false
9+
default: "main"
10+
11+
jobs:
12+
release:
13+
uses: "puppetlabs/cat-github-actions/.github/workflows/gem_release.yml@main"
14+
with:
15+
target: "${{ github.event.inputs.target }}"
16+
secrets: "inherit"

.github/workflows/release_prep.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: "release prep"
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
target:
7+
description: "The target for the release. This can be a commit sha or a branch."
8+
required: false
9+
default: "main"
10+
version:
11+
description: "Version of gem to be released."
12+
required: true
13+
14+
jobs:
15+
release_prep:
16+
uses: "puppetlabs/cat-github-actions/.github/workflows/gem_release_prep.yml@main"
17+
with:
18+
target: "${{ github.event.inputs.target }}"
19+
version: "${{ github.events.inputs.version }}"
20+
secrets: "inherit"

Gemfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,9 @@ if RUBY_VERSION =~ /^1\.?9/
3838
elsif RUBY_VERSION =~ /^1\.?8/
3939
gem 'json_pure', '< 2.0.0'
4040
else
41-
gem 'rubocop'
42-
gem 'rubocop-rspec', '~> 1.6' if (RUBY_VERSION >= '2.3.0' || RUBY_VERSION >= '23')
41+
gem "rubocop", '= 1.6.1', require: false
42+
gem "rubocop-performance", '= 1.9.1', require: false
43+
gem "rubocop-rspec", '= 2.0.1', require: false
4344
gem 'sync' if (RUBY_VERSION >= '2.7.0')
4445
end
4546

lib/rspec-puppet/version.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#frozen_string_literal: true
2+
3+
module RSpecPuppet
4+
VERSION ||= '2.12.0'
5+
end

rspec-puppet.gemspec

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1+
lib = File.expand_path('lib', __dir__)
2+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3+
require 'rspec-puppet/version'
4+
15
Gem::Specification.new do |s|
26
s.name = 'rspec-puppet'
3-
s.version = '2.12.0'
7+
s.version = RSpecPuppet::VERSION
48
s.homepage = 'https://github.com/puppetlabs/rspec-puppet/'
59
s.summary = 'RSpec tests for your Puppet manifests'
610
s.description = 'RSpec tests for your Puppet manifests'

0 commit comments

Comments
 (0)