git_lib 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 2c3b82cc9214aa0d0faecd8aa639ae16fee57179d0be17aebc365ebebe52e43f
4
+ data.tar.gz: 24b88e76619b9ab4138ebe07eca7c849f09377a2eec21afe384545d6e674df61
5
+ SHA512:
6
+ metadata.gz: eb5e0a487b3adad39dc3bc3d3f3fe94097a143ea0d7fdbccef27d1f5515a4612e98ecd44251d7926b5c4d51aeffd1a0efd819db024564574089dc7428cb9b6f2
7
+ data.tar.gz: 75f854dba8e98489dc373fd829c8792ba8fc581624f5b5191bce97978dba6eade70e89b42a4b16a20ef76f784f42f8c08984841eb246b6647e0e49b11471db92
@@ -0,0 +1,10 @@
1
+ ---
2
+ version: 1
3
+ update_configs:
4
+ - package_manager: "ruby:bundler"
5
+ directory: "/"
6
+ update_schedule: "weekly"
7
+ version_requirement_updates: "off"
8
+ commit_message:
9
+ prefix: "No-Jira"
10
+ include_scope: true
@@ -0,0 +1,37 @@
1
+ ---
2
+ on:
3
+ push:
4
+ tags:
5
+ - 'v*'
6
+
7
+ name: Create Release
8
+
9
+ jobs:
10
+ build:
11
+ name: Create Release
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Get version from tag
15
+ id: tag_name
16
+ shell: bash
17
+ run: |
18
+ echo ::set-output name=current_version::${GITHUB_REF#refs/tags/v}
19
+ - name: Checkout code
20
+ uses: actions/checkout@v2
21
+ - name: Get Changelog Entry
22
+ id: changelog_reader
23
+ uses: mindsers/changelog-reader-action@v1
24
+ with:
25
+ version: ${{ steps.tag_name.outputs.current_version }}
26
+ path: ./CHANGELOG.md
27
+ - name: Create Release
28
+ id: create_release
29
+ uses: actions/create-release@v1
30
+ env:
31
+ GITHUB_TOKEN: ${{ secrets.GEM_RELEASE_GIT_TOKEN }}
32
+ with:
33
+ tag_name: ${{ github.ref }}
34
+ release_name: Release ${{ github.ref }}
35
+ body: ${{ steps.changelog_reader.outputs.log_entry }}
36
+ draft: false
37
+ prerelease: false
@@ -0,0 +1,53 @@
1
+ *.gem
2
+ *.rbc
3
+ /*.pem
4
+ /.config
5
+ /coverage/
6
+ /InstalledFiles
7
+ /pkg/
8
+ /spec/reports/
9
+ /test/tmp/
10
+ /test/version_tmp/
11
+ /tmp/
12
+ *secrets*
13
+ /shared/
14
+
15
+ ## Specific to RubyMotion:
16
+ .dat*
17
+ .repl_history
18
+ build/
19
+ shared/
20
+
21
+ ## Documentation cache and generated files:
22
+ /.yardoc/
23
+ /_yardoc/
24
+ /doc/
25
+ /rdoc/
26
+
27
+ ## Environment normalisation:
28
+ /.bundle/
29
+ /vendor/bundle
30
+ /lib/bundler/man/
31
+
32
+ # for a library or gem, you might want to ignore these files since the code is
33
+ # intended to run in multiple environments; otherwise, check them in:
34
+ # Gemfile.lock
35
+ # .ruby-version
36
+ # .ruby-gemset
37
+
38
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
39
+ .rvmrc
40
+
41
+ # rubymine
42
+ .idea
43
+
44
+ # mac
45
+ .DS_Store
46
+
47
+ # Ignore all logfiles and tempfiles.
48
+ /log/*
49
+ !/log/.keep
50
+ /tmp
51
+ /log
52
+
53
+ gemfiles/*.lock
@@ -0,0 +1,72 @@
1
+ #!/usr/bin/groovy
2
+ @Library('jenkins-pipeline@v0.4.5')
3
+ import com.invoca.docker.*;
4
+
5
+ pipeline {
6
+ agent {
7
+ kubernetes {
8
+ defaultContainer "ruby"
9
+ yamlFile ".jenkins/ruby_build_pod.yml"
10
+ }
11
+ }
12
+
13
+ environment {
14
+ GITHUB_TOKEN = credentials('github_token')
15
+ BUNDLE_GEM__FURY__IO = credentials('gemfury_deploy_token')
16
+ }
17
+
18
+ stages {
19
+ stage('Setup') {
20
+ steps {
21
+ updateGitHubStatus('clean-build', 'pending', 'Running unit tests...')
22
+ sh 'bundle install'
23
+ sh 'bundle exec appraisal install'
24
+ }
25
+ }
26
+
27
+ stage('Appraisals') {
28
+ parallel {
29
+ stage('Current') {
30
+ environment { JUNIT_OUTPUT = 'spec/reports/current/rspec.xml' }
31
+ steps { sh 'bundle exec rspec' }
32
+ post { always { junit JUNIT_OUTPUT } }
33
+ }
34
+
35
+ stage('Rails 4') {
36
+ environment { JUNIT_OUTPUT = 'spec/reports/rails-4/rspec.xml' }
37
+ steps { sh 'bundle exec appraisal rails-4 rspec' }
38
+ post { always { junit JUNIT_OUTPUT } }
39
+ }
40
+
41
+ stage('Rails 5') {
42
+ environment { JUNIT_OUTPUT = 'spec/reports/rails-5/rspec.xml' }
43
+ steps { sh 'bundle exec appraisal rails-5 rspec' }
44
+ post { always { junit JUNIT_OUTPUT } }
45
+ }
46
+
47
+ stage('Rails 6') {
48
+ environment { JUNIT_OUTPUT = 'spec/reports/rails-6/rspec.xml' }
49
+ steps { sh 'bundle exec appraisal rails-6 rspec' }
50
+ post { always { junit JUNIT_OUTPUT } }
51
+ }
52
+ }
53
+ }
54
+ }
55
+
56
+ post {
57
+ success { updateGitHubStatus('clean-build', 'success', 'Unit tests passed') }
58
+ failure { updateGitHubStatus('clean-build', 'failure', 'Unit tests failed') }
59
+ }
60
+ }
61
+
62
+ void updateGitHubStatus(String context, String status, String description) {
63
+ gitHubStatus([
64
+ repoSlug: 'Invoca/git_lib',
65
+ sha: env.GIT_COMMIT,
66
+ description: description,
67
+ context: context,
68
+ targetURL: env.RUN_DISPLAY_URL,
69
+ token: env.GITHUB_TOKEN,
70
+ status: status
71
+ ])
72
+ }
@@ -0,0 +1,19 @@
1
+ ---
2
+ apiVersion: v1
3
+ kind: Pod
4
+ metadata:
5
+ labels:
6
+ jenkins/git-lib: 'true'
7
+ namespace: jenkins
8
+ name: git-lib
9
+ spec:
10
+ containers:
11
+ - name: ruby
12
+ image: ruby:2.6.1
13
+ tty: true
14
+ resources:
15
+ requests:
16
+ memory: "100Mi"
17
+ command:
18
+ - cat
19
+
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --require spec_helper
2
+ --color
3
+ --format progress
@@ -0,0 +1,43 @@
1
+ require: rubocop-rspec
2
+
3
+ Metrics/LineLength:
4
+ Max: 120
5
+ Style/Lambda:
6
+ Enabled: false
7
+ Style/Documentation:
8
+ Enabled: false
9
+ Style/IfUnlessModifier:
10
+ Enabled: false
11
+ Style/GuardClause:
12
+ Enabled: false
13
+ Metrics/MethodLength:
14
+ Enabled: false
15
+ Metrics/ClassLength:
16
+ Enabled: false
17
+ Metrics/CyclomaticComplexity:
18
+ Enabled: false
19
+ Metrics/AbcSize:
20
+ Enabled: false
21
+ Metrics/PerceivedComplexity:
22
+ Enabled: false
23
+ RSpec/InstanceVariable:
24
+ Enabled: false
25
+ RSpec/ExampleLength:
26
+ Enabled: false
27
+ RSpec/AnyInstance:
28
+ Enabled: false
29
+ Style/RegexpLiteral:
30
+ Enabled: false
31
+ Style/WordArray:
32
+ Enabled: false
33
+ RSpec/DescribeClass:
34
+ Enabled: false
35
+ RSpec/DescribedClass:
36
+ Enabled: false
37
+ Style/NumericLiterals:
38
+ Enabled: false
39
+ Metrics/ParameterLists:
40
+ Enabled: false
41
+ AllCops:
42
+ Include:
43
+ - '**/*.rb'
@@ -0,0 +1 @@
1
+ 2.6.1
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ appraise 'rails-4' do
4
+ gem 'activesupport', '~> 4.2'
5
+ end
6
+
7
+ appraise 'rails-5' do
8
+ gem 'activesupport', '~> 5.2'
9
+ end
10
+
11
+ appraise 'rails-6' do
12
+ gem 'activesupport', '~> 6.0'
13
+ end
@@ -0,0 +1,24 @@
1
+ # CHANGELOG for `git_lib`
2
+
3
+ Inspired by [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
4
+
5
+ Note: this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [1.2.0] - 2020-07-13
8
+ ### Added
9
+ - Add support for Rails 5 and 6.
10
+ - Add Appraisal and Jenkinsfile to test Rails 4, 5, 6.
11
+
12
+ ### Changed
13
+ - Modernize gemspec and Gemfile some more.
14
+ - Allow Activesupport > 4.
15
+
16
+ ## [1.1.1] - 2020-06-23
17
+ ### Changed
18
+ - Allow Rails '~> 4.2'.
19
+ - Clean up gemspec and Gemfile; bundle update.
20
+ - Add magic frozen_string_literal: true comment everywhere.
21
+ - Clean up Rakefile.
22
+
23
+ [1.2.0]: https://github.com/Invoca/git_lib/compare/v1.1.1...v1.2.0
24
+ [1.1.1]: https://github.com/Invoca/git_lib/compare/v1.1.0...v1.1.1
data/Gemfile ADDED
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
6
+
7
+ gem 'activesupport', '>= 5.2.4.3'
8
+ gem 'appraisal'
9
+ gem 'bundler', '~> 1.17'
10
+ gem 'bundler-audit', require: false
11
+ gem 'climate_control', '~> 0.2'
12
+ gem 'coveralls', require: false
13
+ gem 'fakefs', '~> 0.9', require: 'fakefs/safe'
14
+ gem 'json', '~> 1.8'
15
+ gem 'pry'
16
+ gem 'pry-byebug'
17
+ gem 'rake'
18
+ gem 'rspec', '~> 3.5'
19
+ gem "rspec_junit_formatter"
20
+ gem 'rubocop', require: false
21
+ gem 'rubocop-rspec', require: false
@@ -0,0 +1,121 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ git_lib (1.2.0)
5
+ activesupport (>= 4.2, < 7)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ activesupport (5.2.4.3)
11
+ concurrent-ruby (~> 1.0, >= 1.0.2)
12
+ i18n (>= 0.7, < 2)
13
+ minitest (~> 5.1)
14
+ tzinfo (~> 1.1)
15
+ appraisal (2.3.0)
16
+ bundler
17
+ rake
18
+ thor (>= 0.14.0)
19
+ ast (2.4.1)
20
+ bundler-audit (0.7.0.1)
21
+ bundler (>= 1.2.0, < 3)
22
+ thor (>= 0.18, < 2)
23
+ byebug (11.1.3)
24
+ climate_control (0.2.0)
25
+ coderay (1.1.3)
26
+ concurrent-ruby (1.1.6)
27
+ coveralls (0.8.23)
28
+ json (>= 1.8, < 3)
29
+ simplecov (~> 0.16.1)
30
+ term-ansicolor (~> 1.3)
31
+ thor (>= 0.19.4, < 2.0)
32
+ tins (~> 1.6)
33
+ diff-lcs (1.3)
34
+ docile (1.3.2)
35
+ fakefs (0.20.1)
36
+ i18n (1.8.3)
37
+ concurrent-ruby (~> 1.0)
38
+ json (1.8.6)
39
+ method_source (1.0.0)
40
+ minitest (5.14.1)
41
+ parallel (1.19.2)
42
+ parser (2.7.1.3)
43
+ ast (~> 2.4.0)
44
+ pry (0.13.1)
45
+ coderay (~> 1.1)
46
+ method_source (~> 1.0)
47
+ pry-byebug (3.9.0)
48
+ byebug (~> 11.0)
49
+ pry (~> 0.13.0)
50
+ rainbow (3.0.0)
51
+ rake (13.0.1)
52
+ regexp_parser (1.7.1)
53
+ rexml (3.2.4)
54
+ rspec (3.9.0)
55
+ rspec-core (~> 3.9.0)
56
+ rspec-expectations (~> 3.9.0)
57
+ rspec-mocks (~> 3.9.0)
58
+ rspec-core (3.9.2)
59
+ rspec-support (~> 3.9.3)
60
+ rspec-expectations (3.9.2)
61
+ diff-lcs (>= 1.2.0, < 2.0)
62
+ rspec-support (~> 3.9.0)
63
+ rspec-mocks (3.9.1)
64
+ diff-lcs (>= 1.2.0, < 2.0)
65
+ rspec-support (~> 3.9.0)
66
+ rspec-support (3.9.3)
67
+ rspec_junit_formatter (0.4.1)
68
+ rspec-core (>= 2, < 4, != 2.12.0)
69
+ rubocop (0.85.1)
70
+ parallel (~> 1.10)
71
+ parser (>= 2.7.0.1)
72
+ rainbow (>= 2.2.2, < 4.0)
73
+ regexp_parser (>= 1.7)
74
+ rexml
75
+ rubocop-ast (>= 0.0.3)
76
+ ruby-progressbar (~> 1.7)
77
+ unicode-display_width (>= 1.4.0, < 2.0)
78
+ rubocop-ast (0.0.3)
79
+ parser (>= 2.7.0.1)
80
+ rubocop-rspec (1.40.0)
81
+ rubocop (>= 0.68.1)
82
+ ruby-progressbar (1.10.1)
83
+ simplecov (0.16.1)
84
+ docile (~> 1.1)
85
+ json (>= 1.8, < 3)
86
+ simplecov-html (~> 0.10.0)
87
+ simplecov-html (0.10.2)
88
+ sync (0.5.0)
89
+ term-ansicolor (1.7.1)
90
+ tins (~> 1.0)
91
+ thor (1.0.1)
92
+ thread_safe (0.3.6)
93
+ tins (1.25.0)
94
+ sync
95
+ tzinfo (1.2.7)
96
+ thread_safe (~> 0.1)
97
+ unicode-display_width (1.7.0)
98
+
99
+ PLATFORMS
100
+ ruby
101
+
102
+ DEPENDENCIES
103
+ activesupport (>= 5.2.4.3)
104
+ appraisal
105
+ bundler (~> 1.17)
106
+ bundler-audit
107
+ climate_control (~> 0.2)
108
+ coveralls
109
+ fakefs (~> 0.9)
110
+ git_lib!
111
+ json (~> 1.8)
112
+ pry
113
+ pry-byebug
114
+ rake
115
+ rspec (~> 3.5)
116
+ rspec_junit_formatter
117
+ rubocop
118
+ rubocop-rspec
119
+
120
+ BUNDLED WITH
121
+ 1.17.3
@@ -0,0 +1,9 @@
1
+ # Git Lib
2
+ The GitLib is a simple wrapper around the Git command line tool.
3
+
4
+ ## Requirements
5
+ It requires git version 2.6.2 or greater
6
+
7
+ ## Code Status
8
+ [![Build Status](https://semaphoreci.com/api/v1/mikeweaver/git_lib/branches/master/badge.svg)](https://semaphoreci.com/mikeweaver/git_lib)
9
+ [![Coverage Status](https://coveralls.io/repos/github/mikeweaver/git_lib/badge.svg?branch=master)](https://coveralls.io/github/mikeweaver/git_lib?branch=master)