safedb 0.10.16 → 0.10.17
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 +4 -4
- data/CONTRIBUTING.md +19 -14
- data/{release.sh → git-release.sh} +0 -0
- data/lib/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e5dfd7a7f6826912791779b1ebd825ff3462b1e1551d68356ae99d840b9d2840
|
|
4
|
+
data.tar.gz: a57603f5c08de34105db43a63794d4aab4064c85413a353f93efcfe82cf4b8fe
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 634212d7457f6c1f00f3b1a88d5a73e935575415082a686bd8b23d3964a22db3ce8c40644a688732ab6e9918aa0a5c886c61dd5857371cb8f08dec9444d161e3
|
|
7
|
+
data.tar.gz: 31667882645d3f280c24705a85fe82edd657a54bd58fa6fde287ff1243804f4384d0a25d7ae3aa90cc8eb4ad7780eb34f685b7c9d8afb667d0345778616e442e
|
data/CONTRIBUTING.md
CHANGED
|
@@ -178,25 +178,30 @@ safedb.net has Dockerfiles through which the Cucumber/Aruba BDD (behaviour drive
|
|
|
178
178
|
- **RedHat Enterprise Linux (RHEL)**
|
|
179
179
|
- CoreOS containers
|
|
180
180
|
|
|
181
|
+
|
|
182
|
+
### Pipeline Pre-Conditions
|
|
183
|
+
|
|
184
|
+
The pipeline runs on a Kubernetes platform. The deploy phase depends on the **[Rubygems.org credentials file mounted as a kubernetes secret](https://github.com/devops4me/kubernetes-pipeline)**.
|
|
185
|
+
|
|
186
|
+
|
|
181
187
|
### CI/CD Pipeline from Git to RubyGems.org
|
|
182
188
|
|
|
183
|
-
The Jenkinsfile
|
|
189
|
+
The [Jenkinsfile] pipeline definition ensures that succesful builds, quality inspection and tests result in a new version of the software being released to RubyGems.org. In the main the steps are
|
|
184
190
|
|
|
191
|
+
- use the [rubygem build image in Dockerhub](https://hub.docker.com/repository/docker/devops4me/rubygem) to run reek static code analysis
|
|
192
|
+
- use the same image to run Cucumber / Aruba command line system tests
|
|
193
|
+
- pipeline ends **unless the branch is origin/release** (current implementation incorrectly specifies NOT origin/master)
|
|
194
|
+
- copy mounted credentials to **`~/.gem/credentials`** and lock down the file permissions
|
|
195
|
+
- use rake release to push the [latest version](lib/version.rb) of the safe gem
|
|
185
196
|
|
|
186
|
-
|
|
197
|
+
When Kubernetes mounts a secret it makes the entire space read only which can disrupt any software legitimately writing to the mounted path. This is why the secret is not directly mounted into the **`~/.gem/`** directory.
|
|
187
198
|
|
|
188
|
-
The
|
|
199
|
+
### The Git Release Script
|
|
189
200
|
|
|
190
|
-
The
|
|
201
|
+
The [git-release.sh] script is run when a human being feels the software state is worth publishing. If so the steps are to
|
|
191
202
|
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
-
|
|
195
|
-
- create another pod to run the just-built devopswiki.co.uk image
|
|
196
|
-
- configure the container with a readiness probe so it does not receive traffic too early
|
|
197
|
-
- run a linkcheck activity using this Dockerhub linkcheck image (from this Github repo)
|
|
198
|
-
- if the linkchecking produces errors the pipeline fails and stops
|
|
199
|
-
- on success the devopswiki image is tagged with build number, Git commit ref and timestamp
|
|
200
|
-
- a kubectl rollout is issued based on the newly tagged devopswiki image
|
|
201
|
-
- change the standing start Kubernetes deployment configs to reflect the new tag
|
|
203
|
+
- commit and push to master
|
|
204
|
+
- change [lib/version.rb] to increment the **major** or **minor** versions
|
|
205
|
+
- run **`./git-release.sh`**
|
|
202
206
|
|
|
207
|
+
The git release script bumps up the patch version and forwards the origin/release branch to bring it up to date with master and pushes thus triggering the pipeline which in turn goes the extra mile to **[release the safe to Rubygems.org](https://rubygems.org/gems/safedb)**.
|
|
File without changes
|
data/lib/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: safedb
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.10.
|
|
4
|
+
version: 0.10.17
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Apollo Akora
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-01-
|
|
11
|
+
date: 2020-01-30 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bcrypt
|
|
@@ -100,6 +100,7 @@ files:
|
|
|
100
100
|
- README.md
|
|
101
101
|
- Rakefile
|
|
102
102
|
- bin/safe
|
|
103
|
+
- git-release.sh
|
|
103
104
|
- lib/cli.rb
|
|
104
105
|
- lib/controller/abstract/authenticate.rb
|
|
105
106
|
- lib/controller/abstract/controller.rb
|
|
@@ -223,7 +224,6 @@ files:
|
|
|
223
224
|
- pkg/README.md
|
|
224
225
|
- pod-image-release.yaml
|
|
225
226
|
- pod-image-validate.yaml
|
|
226
|
-
- release.sh
|
|
227
227
|
- safedb.gemspec
|
|
228
228
|
homepage: https://www.safedb.net
|
|
229
229
|
licenses:
|