itamae-plugin-recipe-gitlab_runner 0.1.0 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 609f6e76bbdcfd450e5eaec4543c216ba6a72550a58a8d911bcb68ce65a5b529
4
- data.tar.gz: dafaa239547b5a1ad1bbd2ff7305be18cb7f5ee41846d51a011df817dfb59c98
3
+ metadata.gz: faf92d3247902a7e7d789b4a18f0aef12a4580faab2f897e5199d2b5a32e027a
4
+ data.tar.gz: 3fbb10b765e9642c67f0c867414ee1a5164afa0380cac0b490f20bf7288fdd89
5
5
  SHA512:
6
- metadata.gz: 860868e028749d9d18ca1963b5688328a009301793046097ae724c76fb26949ce044a778796bf68b7b6b8b9cba0dd05b0d53ebd92b4efb6e4d33762c5164e08a
7
- data.tar.gz: 63711e903e184b0f755a8d6d6e22839929e1e5221db4d56b17bb33e4264e70e788e8cc4764066d84fdad41d5ca9decb978a6355974c81f4d7859e896ad3c9568
6
+ metadata.gz: ab5594c2cae7b28ac23983fcd1c7a989f913bd1a8194d23eb5594bdfdbe524c2a1785ac5866f9e38e707663b8358a95e4ebe1f4f189da66a278731f858179865
7
+ data.tar.gz: dc34a44e94e5edb96af40a4527192ca5a896388b9222a197fb7cef8ca994ab64fc142a0b6c9a0bf96e86511075b3bbf221100236272f637eacb5a3de02deb64c
@@ -0,0 +1,98 @@
1
+ name: test
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+ pull_request:
8
+ types:
9
+ - opened
10
+ - synchronize
11
+ - reopened
12
+ schedule:
13
+ - cron: "0 10 * * 5" # JST 19:00 (Fri)
14
+
15
+ env:
16
+ CI: "true"
17
+
18
+ jobs:
19
+ test:
20
+ runs-on: ubuntu-latest
21
+
22
+ strategy:
23
+ fail-fast: false
24
+
25
+ matrix:
26
+ ruby:
27
+ - 2.3
28
+ image:
29
+ - centos:7
30
+ - debian:jessie
31
+ - debian:stretch
32
+ - debian:buster
33
+ - amazonlinux:2
34
+
35
+ steps:
36
+ - uses: actions/checkout@v2
37
+
38
+ - uses: eregon/use-ruby-action@v1
39
+ with:
40
+ ruby-version: ${{ matrix.ruby }}
41
+
42
+ - name: Cache vendor/bundle
43
+ uses: actions/cache@v1
44
+ id: cache_gem
45
+ with:
46
+ path: vendor/bundle
47
+ key: v1-gem-${{ runner.os }}-${{ matrix.ruby }}-${{ github.sha }}
48
+ restore-keys: |
49
+ v1-gem-${{ runner.os }}-${{ matrix.ruby }}-
50
+
51
+ - name: bundle update
52
+ run: |
53
+ set -xe
54
+ bundle config path vendor/bundle
55
+ bundle update --jobs $(nproc) --retry 3
56
+
57
+ - name: Run Itamae
58
+ run: |
59
+ set -xe
60
+ bundle exec itamae docker --node-yaml=spec/recipes/node.yml spec/recipes/install.rb --image=$IMAGE --tag itamae-plugin:latest
61
+ env:
62
+ IMAGE: ${{ matrix.image }}
63
+
64
+ - name: Run Serverspec
65
+ run: |
66
+ set -xe
67
+ bundle exec rspec
68
+ env:
69
+ DOCKER_IMAGE: itamae-plugin:latest
70
+
71
+ - name: Slack Notification (not success)
72
+ uses: lazy-actions/slatify@master
73
+ if: "! success()"
74
+ continue-on-error: true
75
+ with:
76
+ job_name: ${{ format('*build* ({0}, {1})', matrix.ruby, matrix.image) }}
77
+ type: ${{ job.status }}
78
+ icon_emoji: ":octocat:"
79
+ url: ${{ secrets.SLACK_WEBHOOK }}
80
+ token: ${{ secrets.GITHUB_TOKEN }}
81
+
82
+ notify:
83
+ needs:
84
+ - test
85
+
86
+ runs-on: ubuntu-latest
87
+
88
+ steps:
89
+ - name: Slack Notification (success)
90
+ uses: lazy-actions/slatify@master
91
+ if: always()
92
+ continue-on-error: true
93
+ with:
94
+ job_name: '*build*'
95
+ type: ${{ job.status }}
96
+ icon_emoji: ":octocat:"
97
+ url: ${{ secrets.SLACK_WEBHOOK }}
98
+ token: ${{ secrets.GITHUB_TOKEN }}
data/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  ## master
2
- [full changelog](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/compare/v0.1.0...master)
2
+ [full changelog](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/compare/v0.2.3...master)
3
+
4
+ ## 0.2.3
5
+ [full changelog](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/compare/v0.2.2...v0.2.3)
6
+
7
+ * Enable MFA requirement for gem releasing
8
+ * https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/pull/23
9
+
10
+ ## 0.2.2
11
+ [full changelog](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/compare/v0.2.1...v0.2.2)
12
+
13
+ * Add `config` to `register_gitlab_runner`
14
+ * https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/pull/7
15
+
16
+ ## 0.2.1
17
+ [full changelog](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/compare/v0.2.0...v0.2.1)
18
+
19
+ * Fix changelog link
20
+ * https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/pull/6
21
+
22
+ ## 0.2.0
23
+ [full changelog](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/compare/v0.1.0...v0.2.0)
24
+
25
+ * Impl `register_gitlab_runner`
26
+ * https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/pull/5
3
27
 
4
28
  ## 0.1.0
5
29
  * first release
data/README.md CHANGED
@@ -2,7 +2,8 @@
2
2
 
3
3
  Itamae plugin to install [GitLab Runner](https://docs.gitlab.com/runner/)
4
4
 
5
- [![Build Status](https://travis-ci.org/sue445/itamae-plugin-recipe-gitlab_runner.svg?branch=master)](https://travis-ci.org/sue445/itamae-plugin-recipe-gitlab_runner)
5
+ [![Gem Version](https://badge.fury.io/rb/itamae-plugin-recipe-gitlab_runner.svg)](https://badge.fury.io/rb/itamae-plugin-recipe-gitlab_runner)
6
+ [![Build Status](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/workflows/test/badge.svg?branch=master)](https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/actions?query=workflow%3Atest)
6
7
 
7
8
  ## Installation
8
9
 
@@ -31,12 +32,9 @@ Or `include_recipe` just what you need manually:
31
32
 
32
33
  ```ruby
33
34
  include_recipe "gitlab_runner::install"
35
+ include_recipe "gitlab_runner::register_gitlab_runner"
34
36
  ```
35
37
 
36
- After, you need to register a runner
37
-
38
- https://docs.gitlab.com/runner/register/index.html
39
-
40
38
  ### Node
41
39
 
42
40
  ```yml
@@ -45,6 +43,34 @@ gitlab-runner:
45
43
  version: "10.0.0" # optional. Install latest version if omitted
46
44
  ```
47
45
 
46
+ ### `register_gitlab_runner`
47
+ Register a gitlab_runner
48
+
49
+ * `name` (`String`)
50
+ * runner name
51
+ * `options` (`Array`, `String`)
52
+ * args for `gitlab-runner register`
53
+ * `--non-interactive`, `--name` and `--description` are needless
54
+ * c.f. https://docs.gitlab.com/runner/register/#one-line-registration-command
55
+ * `config` (`String`)
56
+ * config file (default: `/etc/gitlab-runner/config.toml`)
57
+
58
+ e.g)
59
+
60
+ ```ruby
61
+ register_gitlab_runner "docker-runner" do
62
+ options [
63
+ "--url", "https://gitlab.com/",
64
+ "--registration-token", "PROJECT_REGISTRATION_TOKEN",
65
+ "--executor", "docker",
66
+ "--docker-image", "alpine:3",
67
+ "--tag-list", "docker,aws",
68
+ "--run-untagged",
69
+ "--locked=false",
70
+ ]
71
+ end
72
+ ```
73
+
48
74
  ## Development
49
75
 
50
76
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -14,12 +14,17 @@ Gem::Specification.new do |spec|
14
14
  spec.homepage = "https://github.com/sue445/itamae-plugin-recipe-gitlab_runner"
15
15
  spec.license = "MIT"
16
16
 
17
+ spec.metadata["homepage_uri"] = spec.homepage
18
+ spec.metadata["source_code_uri"] = spec.homepage
19
+ spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/master/CHANGELOG.md"
20
+ spec.metadata["rubygems_mfa_required"] = "true"
21
+
17
22
  # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
18
23
  # to allow pushing to a single host or delete this section to allow pushing to any host.
19
24
  if spec.respond_to?(:metadata)
20
25
  spec.metadata["homepage_uri"] = spec.homepage
21
26
  spec.metadata["source_code_uri"] = spec.homepage
22
- spec.metadata["changelog_uri"] = "https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/CHANGELOG.md"
27
+ spec.metadata["changelog_uri"] = "https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/blob/master/CHANGELOG.md"
23
28
  else
24
29
  raise "RubyGems 2.0 or newer is required to protect against " \
25
30
  "public gem pushes."
@@ -36,8 +41,8 @@ Gem::Specification.new do |spec|
36
41
 
37
42
  spec.add_dependency "itamae"
38
43
 
39
- spec.add_development_dependency "bundler", "~> 1.16"
44
+ spec.add_development_dependency "bundler", ">= 1.16"
40
45
  spec.add_development_dependency "docker-api"
41
- spec.add_development_dependency "rake", "~> 10.0"
46
+ spec.add_development_dependency "rake"
42
47
  spec.add_development_dependency "serverspec"
43
48
  end
@@ -1 +1,2 @@
1
1
  include_recipe "gitlab_runner::install"
2
+ include_recipe "gitlab_runner::register_gitlab_runner"
@@ -0,0 +1,13 @@
1
+ define :register_gitlab_runner, options: [], config: "/etc/gitlab-runner/config.toml" do
2
+ runner_name = params[:name]
3
+ config_file = params[:config]
4
+
5
+ raise "name is required. (e.g. register_gitlab_runner 'your_runner_name')" unless runner_name
6
+
7
+ register_args = ["--non-interactive", "--name", runner_name, "--config", config_file] + Array(params[:options])
8
+ register_args.compact!
9
+
10
+ execute "gitlab-runner register #{register_args.join(" ")}" do
11
+ not_if "gitlab-runner list --config #{config_file} 2>&1 1>/dev/null | grep '#{runner_name}'"
12
+ end
13
+ end
@@ -2,7 +2,7 @@ module Itamae
2
2
  module Plugin
3
3
  module Recipe
4
4
  module GitlabRunner
5
- VERSION = "0.1.0"
5
+ VERSION = "0.2.3"
6
6
  end
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: itamae-plugin-recipe-gitlab_runner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - sue445
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-06 00:00:00.000000000 Z
11
+ date: 2021-11-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: itamae
@@ -28,14 +28,14 @@ dependencies:
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.16'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.16'
41
41
  - !ruby/object:Gem::Dependency
@@ -56,16 +56,16 @@ dependencies:
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '10.0'
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '10.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: serverspec
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -87,9 +87,9 @@ executables: []
87
87
  extensions: []
88
88
  extra_rdoc_files: []
89
89
  files:
90
+ - ".github/workflows/test.yml"
90
91
  - ".gitignore"
91
92
  - ".rspec"
92
- - ".travis.yml"
93
93
  - CHANGELOG.md
94
94
  - Gemfile
95
95
  - LICENSE.txt
@@ -101,6 +101,7 @@ files:
101
101
  - lib/itamae/plugin/recipe/gitlab_runner.rb
102
102
  - lib/itamae/plugin/recipe/gitlab_runner/default.rb
103
103
  - lib/itamae/plugin/recipe/gitlab_runner/install.rb
104
+ - lib/itamae/plugin/recipe/gitlab_runner/register_gitlab_runner.rb
104
105
  - lib/itamae/plugin/recipe/gitlab_runner/version.rb
105
106
  homepage: https://github.com/sue445/itamae-plugin-recipe-gitlab_runner
106
107
  licenses:
@@ -108,8 +109,9 @@ licenses:
108
109
  metadata:
109
110
  homepage_uri: https://github.com/sue445/itamae-plugin-recipe-gitlab_runner
110
111
  source_code_uri: https://github.com/sue445/itamae-plugin-recipe-gitlab_runner
111
- changelog_uri: https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/CHANGELOG.md
112
- post_install_message:
112
+ changelog_uri: https://github.com/sue445/itamae-plugin-recipe-gitlab_runner/blob/master/CHANGELOG.md
113
+ rubygems_mfa_required: 'true'
114
+ post_install_message:
113
115
  rdoc_options: []
114
116
  require_paths:
115
117
  - lib
@@ -124,9 +126,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
124
126
  - !ruby/object:Gem::Version
125
127
  version: '0'
126
128
  requirements: []
127
- rubyforge_project:
128
- rubygems_version: 2.7.7
129
- signing_key:
129
+ rubygems_version: 3.2.22
130
+ signing_key:
130
131
  specification_version: 4
131
132
  summary: Itamae plugin to install GitLab Runner
132
133
  test_files: []
data/.travis.yml DELETED
@@ -1,25 +0,0 @@
1
- language: ruby
2
- sudo: required
3
- services:
4
- - docker
5
- rvm:
6
- - 2.5
7
- env:
8
- - IMAGE=centos:7
9
- - IMAGE=debian:jessie
10
- - IMAGE=amazonlinux:2
11
- bundler_args: "--jobs=4"
12
- cache: bundler
13
- before_install:
14
- - gem update --system --no-document
15
- - gem install bundler --no-document
16
- script:
17
- - bundle exec itamae docker --node-yaml=spec/recipes/node.yml spec/recipes/install.rb --image=$IMAGE --tag itamae-plugin:latest
18
- - DOCKER_IMAGE=itamae-plugin:latest bundle exec rspec
19
- branches:
20
- only:
21
- - master
22
- notifications:
23
- email: false
24
- slack:
25
- secure: Wd60nazhMcyK7w+j4owi7ZWBCbEl0ZdPkp+Ir+c1jYwXNC4kDF5bSU0YfBtApiDBozI7OGe8U66Z6CTGyvbSt0+pM17xGW9COz/sDDwUkxawr/X+ZVYzLx0QwIYhnwqv3A0Yy8lAAAeB/GNaVzvVajflJrLY4O4qin7vpoVOexrLFY08brFBr67BxgZJBprtgjgKxyIFRYBln/1pSfDG/rtTxlpqDnh7tPk0lysNznd350Sj6Lh02ZYblBwyypo/BTF7nflgi7cxFLaXTNVJ4d5xrrq2QkoTcuqm3fw897hp0lCHitu3EnPur7Aro7C+nzejIK2mJBgRI7gBsmOj+cQBWDfRh/CIsGIZ3+lkOC+mfI0GH18kvnaSpc9WzvjoIDHiJZxtuVrqHdUiYaf+ewRkHi5IaOO3hlWr1KrIj+2A83KrbOjsGY9sE9jN8eD0jkfG7bsqLhpNv7CX+GVZSsAaapYl2WHprN0eVnvfCKbGB/GJUGq5BJxdxrSlioKuNeCNlUavfSnjUAknf3g+zDh+3RDlPCnnFNtp4i45tBmAUwf66JMmN+8UdDCLL+9teQjsVmrQh/JW/ExM/OYZF5ceW8yXNams+GjzKrayzoSHGJIRhWHzsaG1unmkvbIM7OcRdrNmudHBUP46W25TwXq4JXufmbojtShuNTyzTSA=