shipyrd 0.2.7 → 0.2.9

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: 5b1af0b6658cdd0f6103ffe6d9452c82796dfe8ca3f925fd9c15deb3e174a0ef
4
- data.tar.gz: cfbda6299a9e7a1b0ef7ab7fd61cd6161c0256a9b1166f7943059112b86cf9e2
3
+ metadata.gz: 1b988c2350fa48044fbef604ad868571d9730c089725062f120b2b22d3da8e02
4
+ data.tar.gz: 67b6df1cd737d04ac6c73ca7fcc64843d80cfd26b4e4564a54fbb0dd275b225f
5
5
  SHA512:
6
- metadata.gz: d4753657fb688e08980ced4d40ed4c86f08da31620978faf63c8f536002cfc917e946709ffd4cec663af662af8d4f384372fa7c780ae8c789d2081ae236318ed
7
- data.tar.gz: 7f677cdb4bd4006b548c33daeb9080493e61cbe1bef6dd0ffe08d410d08ba17ae2652f3059ad971cc6abb678e12a9f356f6ef4dcab99c48cf65ace36123e5aee
6
+ metadata.gz: 9e9813bafcb8a60628689727aafd84e63c47f3a8f1e3f8e533dd56963e70ef915a2c1f2f4cd9ce9d8cd3e02bc4da36477fb4ccd78930a6e30d9896bd2afb23bb
7
+ data.tar.gz: 20af02a805bd95be735dac9a66b596294b772606f91c8f0ec9a2e82a49754521105a35cd575d6480f04fd188230d491c0d73980973cd616dd3fbc971baf390cb
data/Dockerfile ADDED
@@ -0,0 +1,32 @@
1
+ # Use the official Ruby 3.3.0 Alpine image as the base image
2
+ FROM ruby:3.3.0-alpine
3
+
4
+ # Set the working directory to /shipyrd
5
+ WORKDIR /shipyrd
6
+
7
+ # Copy the Gemfile, shipyrd.gemspec into the container
8
+ COPY Gemfile shipyrd.gemspec ./
9
+
10
+ # Required in shipyrd.gemspec
11
+ COPY lib/shipyrd/version.rb /shipyrd/lib/shipyrd/version.rb
12
+
13
+ # Install system dependencies
14
+ RUN apk add --no-cache --update build-base git \
15
+ && gem install bundler --version=2.5.14 \
16
+ && bundle install
17
+
18
+ # Copy the rest of our application code into the container.
19
+ # We do this after bundle install, to avoid having to run bundle
20
+ # every time we do small fixes in the source code.
21
+ COPY . .
22
+
23
+ # Install the gem locally from the project folder
24
+ RUN gem build shipyrd.gemspec && \
25
+ gem install ./shipyrd-*.gem --no-document
26
+
27
+ # Set the working directory to /workdir
28
+ WORKDIR /workdir
29
+
30
+ # Tell git it's safe to access /workdir/.git even if
31
+ # the directory is owned by a different user
32
+ RUN git config --global --add safe.directory /workdir
data/README.md CHANGED
@@ -18,6 +18,24 @@ If bundler is not being used to manage dependencies, install the gem by executin
18
18
 
19
19
  Please see the main Shipyrd app([https://github.com/shipyrd/shipyrd](https://github.com/shipyrd/shipyrd)) for setup and usage instructions.
20
20
 
21
+ ## Usage with Docker
22
+
23
+ You can run a dockerized version of `shipyrd-gem` by adding the following function to your `~/.bashrc` or similar:
24
+
25
+ ```bash
26
+ shipyrd() {
27
+ docker run --rm -v "${PWD}:/workdir" --env-file <(env | grep -E '^(KAMAL_|SHIPYRD_)') ghcr.io/shipyrd/shipyrd-gem /shipyrd/bin/"$@"
28
+ }
29
+ ```
30
+
31
+ Then within a specific Kamal hook (e.g. `pre-connect`), you can call `shipyrd` like this:
32
+
33
+ ```bash
34
+ #!/usr/bin/env bash
35
+
36
+ shipyrd pre-connect
37
+ ```
38
+
21
39
  ## Recording a deploy
22
40
 
23
41
  This gem currently sends the following deploy details to record a deploy. The various `KAMAL_` ENV variables are set via Kamal when the [hooks are called](https://kamal-deploy.org/docs/hooks/hooks-overview/).
@@ -46,6 +64,14 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
46
64
 
47
65
  Bug reports and pull requests are welcome on GitHub at https://github.com/shipyrd/shipyrd-gem. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[shipyrd/shipyrd-gem/blob/main/CODE_OF_CONDUCT.md).
48
66
 
67
+ ## Releasing a new version
68
+
69
+ The `bin/release` command will bump the version in the version.rb file, tag it, and push it up to github & rubygems.
70
+
71
+ ```
72
+ bin/release 0.2.8
73
+ ```
74
+
49
75
  ## Code of Conduct
50
76
 
51
77
  Everyone interacting in the Shipyrd project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/shipyrd/shipyrd-gem/blob/main/CODE_OF_CONDUCT.md).
@@ -93,7 +93,7 @@ class Shipyrd::Client
93
93
  end
94
94
 
95
95
  def validate_configuration
96
- valid_host? && valid_api_key?
96
+ valid_api_key?
97
97
 
98
98
  true
99
99
  rescue ArgumentError => e
@@ -102,12 +102,6 @@ class Shipyrd::Client
102
102
  false
103
103
  end
104
104
 
105
- def valid_host?
106
- raise ArgumentError, "ENV['SHIPYRD_HOST'] is not configured, disabling" unless host
107
-
108
- true
109
- end
110
-
111
105
  def valid_api_key?
112
106
  raise ArgumentError, "ENV['SHIPYRD_API_KEY'] is not configured, disabling" unless api_key
113
107
 
@@ -115,7 +109,7 @@ class Shipyrd::Client
115
109
  end
116
110
 
117
111
  def parse_host(host)
118
- return nil unless host
112
+ return "https://hooks.shipyrd.io" if host.nil?
119
113
  return host if host.start_with?("https")
120
114
 
121
115
  "https://#{host}"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Shipyrd
4
- VERSION = "0.2.7"
4
+ VERSION = "0.2.9"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shipyrd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Hammond
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-31 00:00:00.000000000 Z
11
+ date: 2024-12-03 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: The companion gem for Shipyrd, the Kamal deployment dashboard
14
14
  email:
@@ -19,6 +19,7 @@ extra_rdoc_files: []
19
19
  files:
20
20
  - ".standard.yml"
21
21
  - CODE_OF_CONDUCT.md
22
+ - Dockerfile
22
23
  - Gemfile
23
24
  - Guardfile
24
25
  - README.md