beaker-hcloud 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.github/dependabot.yml +18 -0
- data/.github/workflows/ci.yml +57 -0
- data/.github/workflows/codeql-analysis.yml +70 -0
- data/.github/workflows/release.yml +32 -0
- data/.gitignore +7 -0
- data/.rubocop.yml +5 -0
- data/.rubocop_todo.yml +20 -0
- data/CHANGELOG.md +37 -0
- data/Gemfile +15 -0
- data/LICENSE +661 -0
- data/README.md +53 -0
- data/Rakefile +26 -0
- data/beaker-hcloud.gemspec +29 -0
- data/lib/beaker/hypervisor/hcloud.rb +95 -0
- data/lib/beaker-hcloud/ssh_data_patches.rb +66 -0
- data/lib/beaker-hcloud/version.rb +5 -0
- data/spec/beaker/hypervisor/hcloud_spec.rb +168 -0
- data/spec/spec_helper.rb +29 -0
- metadata +185 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 4f5c821c0ea39733284ea3d70220e085155221384a33df8395dd7cd3cf0cea7f
|
4
|
+
data.tar.gz: 908acad7d375b2499443bc3201db069021b02b529a9d0d94457bb014c2bbee3c
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 4a3223bbffcaed617da9db8e0eb82b710035beb400e7ed77c04a9fc5d66f37068a572e791c2e5cf2eb14a8354c8e0350cb3ce7502386cdd41f7dc3c1b014b80f
|
7
|
+
data.tar.gz: 0411310e0b93bc71e3a06c8ddd9570ccdf6e7c990c5f2c52660f4695cad1d556f6afc74d104bf2b5ec448b581758659d6bf65f9cad580361ee83c551990d18d3
|
@@ -0,0 +1,18 @@
|
|
1
|
+
---
|
2
|
+
version: 2
|
3
|
+
updates:
|
4
|
+
# raise PRs for gem updates
|
5
|
+
- package-ecosystem: bundler
|
6
|
+
directory: "/"
|
7
|
+
schedule:
|
8
|
+
interval: daily
|
9
|
+
time: "13:00"
|
10
|
+
open-pull-requests-limit: 10
|
11
|
+
|
12
|
+
# Maintain dependencies for GitHub Actions
|
13
|
+
- package-ecosystem: github-actions
|
14
|
+
directory: "/"
|
15
|
+
schedule:
|
16
|
+
interval: daily
|
17
|
+
time: "13:00"
|
18
|
+
open-pull-requests-limit: 10
|
@@ -0,0 +1,57 @@
|
|
1
|
+
name: Test
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request: {}
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
8
|
+
|
9
|
+
env:
|
10
|
+
BUNDLE_WITHOUT: release
|
11
|
+
|
12
|
+
jobs:
|
13
|
+
rubocop:
|
14
|
+
runs-on: ubuntu-latest
|
15
|
+
steps:
|
16
|
+
- uses: actions/checkout@v4
|
17
|
+
- name: Install Ruby 3.2
|
18
|
+
uses: ruby/setup-ruby@v1
|
19
|
+
with:
|
20
|
+
ruby-version: "3.2"
|
21
|
+
bundler-cache: true
|
22
|
+
- name: Run rubocop
|
23
|
+
run: bundle exec rake rubocop
|
24
|
+
test:
|
25
|
+
runs-on: ubuntu-latest
|
26
|
+
strategy:
|
27
|
+
fail-fast: false
|
28
|
+
matrix:
|
29
|
+
include:
|
30
|
+
- ruby: "2.7"
|
31
|
+
- ruby: "3.0"
|
32
|
+
- ruby: "3.1"
|
33
|
+
coverage: "yes"
|
34
|
+
- ruby: "3.2"
|
35
|
+
env:
|
36
|
+
COVERAGE: ${{ matrix.coverage }}
|
37
|
+
name: Ruby ${{ matrix.ruby }}
|
38
|
+
steps:
|
39
|
+
- uses: actions/checkout@v4
|
40
|
+
- name: Install Ruby ${{ matrix.ruby }}
|
41
|
+
uses: ruby/setup-ruby@v1
|
42
|
+
with:
|
43
|
+
ruby-version: ${{ matrix.ruby }}
|
44
|
+
bundler-cache: true
|
45
|
+
- name: Verify gem builds
|
46
|
+
run: gem build --strict --verbose *.gemspec
|
47
|
+
- name: Run spec tests
|
48
|
+
run: bundle exec rake
|
49
|
+
|
50
|
+
tests:
|
51
|
+
needs:
|
52
|
+
- rubocop
|
53
|
+
- test
|
54
|
+
runs-on: ubuntu-latest
|
55
|
+
name: Test suite
|
56
|
+
steps:
|
57
|
+
- run: echo Test suite completed
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# For most projects, this workflow file will not need changing; you simply need
|
2
|
+
# to commit it to your repository.
|
3
|
+
#
|
4
|
+
# You may wish to alter this file to override the set of languages analyzed,
|
5
|
+
# or to provide custom queries or build logic.
|
6
|
+
#
|
7
|
+
# ******** NOTE ********
|
8
|
+
# We have attempted to detect the languages in your repository. Please check
|
9
|
+
# the `language` matrix defined below to confirm you have the correct set of
|
10
|
+
# supported CodeQL languages.
|
11
|
+
#
|
12
|
+
name: "CodeQL"
|
13
|
+
|
14
|
+
on:
|
15
|
+
push:
|
16
|
+
branches: [ master ]
|
17
|
+
pull_request:
|
18
|
+
# The branches below must be a subset of the branches above
|
19
|
+
branches: [ master ]
|
20
|
+
schedule:
|
21
|
+
- cron: '30 0 * * 4'
|
22
|
+
|
23
|
+
jobs:
|
24
|
+
analyze:
|
25
|
+
name: Analyze
|
26
|
+
runs-on: ubuntu-latest
|
27
|
+
permissions:
|
28
|
+
actions: read
|
29
|
+
contents: read
|
30
|
+
security-events: write
|
31
|
+
|
32
|
+
strategy:
|
33
|
+
fail-fast: false
|
34
|
+
matrix:
|
35
|
+
language: [ 'ruby' ]
|
36
|
+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
37
|
+
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
38
|
+
|
39
|
+
steps:
|
40
|
+
- name: Checkout repository
|
41
|
+
uses: actions/checkout@v4
|
42
|
+
|
43
|
+
# Initializes the CodeQL tools for scanning.
|
44
|
+
- name: Initialize CodeQL
|
45
|
+
uses: github/codeql-action/init@v2
|
46
|
+
with:
|
47
|
+
languages: ${{ matrix.language }}
|
48
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
49
|
+
# By default, queries listed here will override any specified in a config file.
|
50
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
51
|
+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
52
|
+
|
53
|
+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
54
|
+
# If this step fails, then you should remove it and run the build manually (see below)
|
55
|
+
- name: Autobuild
|
56
|
+
uses: github/codeql-action/autobuild@v2
|
57
|
+
|
58
|
+
# ℹ️ Command-line programs to run using the OS shell.
|
59
|
+
# 📚 https://git.io/JvXDl
|
60
|
+
|
61
|
+
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
62
|
+
# and modify them (or add more) to build your code if your project
|
63
|
+
# uses a compiled language
|
64
|
+
|
65
|
+
#- run: |
|
66
|
+
# make bootstrap
|
67
|
+
# make release
|
68
|
+
|
69
|
+
- name: Perform CodeQL Analysis
|
70
|
+
uses: github/codeql-action/analyze@v2
|
@@ -0,0 +1,32 @@
|
|
1
|
+
name: Release
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
tags:
|
6
|
+
- '*'
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
release:
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
if: github.repository_owner == 'voxpupuli'
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v3
|
14
|
+
- name: Install Ruby 3.0
|
15
|
+
uses: ruby/setup-ruby@v1
|
16
|
+
with:
|
17
|
+
ruby-version: '3.0'
|
18
|
+
env:
|
19
|
+
BUNDLE_WITHOUT: release
|
20
|
+
- name: Build gem
|
21
|
+
run: gem build --strict --verbose *.gemspec
|
22
|
+
- name: Publish gem to rubygems.org
|
23
|
+
run: gem push *.gem
|
24
|
+
env:
|
25
|
+
GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_AUTH_TOKEN }}'
|
26
|
+
- name: Setup GitHub packages access
|
27
|
+
run: |
|
28
|
+
mkdir -p ~/.gem
|
29
|
+
echo ":github: Bearer ${{ secrets.GITHUB_TOKEN }}" >> ~/.gem/credentials
|
30
|
+
chmod 0600 ~/.gem/credentials
|
31
|
+
- name: Publish gem to GitHub packages
|
32
|
+
run: gem push --key github --host https://rubygems.pkg.github.com/voxpupuli *.gem
|
data/.gitignore
ADDED
data/.rubocop.yml
ADDED
data/.rubocop_todo.yml
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# This configuration was generated by
|
2
|
+
# `rubocop --auto-gen-config`
|
3
|
+
# on 2023-09-22 08:48:45 UTC using RuboCop version 1.54.2.
|
4
|
+
# The point is for the user to remove these configuration records
|
5
|
+
# one by one as the offenses are removed from the code base.
|
6
|
+
# Note that changes in the inspected code, or installation of new
|
7
|
+
# versions of RuboCop, may require this file to be generated again.
|
8
|
+
|
9
|
+
# Offense count: 2
|
10
|
+
# Configuration parameters: Max.
|
11
|
+
RSpec/IndexedLet:
|
12
|
+
Exclude:
|
13
|
+
- 'spec/beaker/hypervisor/hcloud_spec.rb'
|
14
|
+
|
15
|
+
# Offense count: 1
|
16
|
+
# This cop supports safe autocorrection (--autocorrect).
|
17
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
|
18
|
+
# URISchemes: http, https
|
19
|
+
Layout/LineLength:
|
20
|
+
Max: 149
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
All notable changes to this project will be documented in this file.
|
4
|
+
|
5
|
+
## [1.0.0](https://github.com/voxpupuli/beaker-hcloud/tree/1.0.0) (2023-09-22)
|
6
|
+
|
7
|
+
[Full Changelog](https://github.com/voxpupuli/beaker-hcloud/compare/205d48a4c1a5dd11add8d7245ad659bb7536a9d9...1.0.0)
|
8
|
+
|
9
|
+
**Implemented enhancements:**
|
10
|
+
|
11
|
+
- Add Ruby 3.2 support [\#14](https://github.com/voxpupuli/beaker-hcloud/pull/14) ([bastelfreak](https://github.com/bastelfreak))
|
12
|
+
- Initial implementation of hypervisor \#10 [\#11](https://github.com/voxpupuli/beaker-hcloud/pull/11) ([oneiros](https://github.com/oneiros))
|
13
|
+
|
14
|
+
**Closed issues:**
|
15
|
+
|
16
|
+
- Hetzner Cloud integration [\#10](https://github.com/voxpupuli/beaker-hcloud/issues/10)
|
17
|
+
|
18
|
+
**Merged pull requests:**
|
19
|
+
|
20
|
+
- Apply Vox Pupuli CI best practices [\#22](https://github.com/voxpupuli/beaker-hcloud/pull/22) ([bastelfreak](https://github.com/bastelfreak))
|
21
|
+
- switch to voxpupuli-rubocop [\#21](https://github.com/voxpupuli/beaker-hcloud/pull/21) ([bastelfreak](https://github.com/bastelfreak))
|
22
|
+
- beaker: Require 5.4 or newer [\#20](https://github.com/voxpupuli/beaker-hcloud/pull/20) ([bastelfreak](https://github.com/bastelfreak))
|
23
|
+
- dependabot: check for github actions and gems [\#15](https://github.com/voxpupuli/beaker-hcloud/pull/15) ([bastelfreak](https://github.com/bastelfreak))
|
24
|
+
- GHA: Add Dummy job we can depend on for reviews [\#12](https://github.com/voxpupuli/beaker-hcloud/pull/12) ([bastelfreak](https://github.com/bastelfreak))
|
25
|
+
- depend on latest beaker [\#9](https://github.com/voxpupuli/beaker-hcloud/pull/9) ([bastelfreak](https://github.com/bastelfreak))
|
26
|
+
- Add LICENSE/README.md [\#8](https://github.com/voxpupuli/beaker-hcloud/pull/8) ([bastelfreak](https://github.com/bastelfreak))
|
27
|
+
- implement beaker hypervisor skeleton [\#7](https://github.com/voxpupuli/beaker-hcloud/pull/7) ([bastelfreak](https://github.com/bastelfreak))
|
28
|
+
- CI: Run spec tests [\#6](https://github.com/voxpupuli/beaker-hcloud/pull/6) ([bastelfreak](https://github.com/bastelfreak))
|
29
|
+
- Create codeql-analysis.yml [\#5](https://github.com/voxpupuli/beaker-hcloud/pull/5) ([bastelfreak](https://github.com/bastelfreak))
|
30
|
+
- Add basic unit testing [\#4](https://github.com/voxpupuli/beaker-hcloud/pull/4) ([bastelfreak](https://github.com/bastelfreak))
|
31
|
+
- CI: Only run on PRs [\#3](https://github.com/voxpupuli/beaker-hcloud/pull/3) ([bastelfreak](https://github.com/bastelfreak))
|
32
|
+
- do not hardcode version in gemspec [\#2](https://github.com/voxpupuli/beaker-hcloud/pull/2) ([bastelfreak](https://github.com/bastelfreak))
|
33
|
+
- Add boilerplate code [\#1](https://github.com/voxpupuli/beaker-hcloud/pull/1) ([bastelfreak](https://github.com/bastelfreak))
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
data/Gemfile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
source ENV['GEM_SOURCE'] || 'https://rubygems.org'
|
4
|
+
|
5
|
+
gemspec
|
6
|
+
|
7
|
+
group :coverage, optional: ENV['COVERAGE'] != 'yes' do
|
8
|
+
gem 'codecov', require: false
|
9
|
+
gem 'simplecov-console', require: false
|
10
|
+
end
|
11
|
+
|
12
|
+
group :release, optional: true do
|
13
|
+
gem 'faraday-retry', '~> 2.1', require: false
|
14
|
+
gem 'github_changelog_generator', '~> 1.16.4', require: false
|
15
|
+
end
|