parse_a_changelog 1.3.0 → 1.3.2
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/.codeclimate.yml +162 -0
- data/.github/CODEOWNERS +9 -0
- data/.gitignore +2 -0
- data/.rspec +3 -0
- data/CHANGELOG.md +12 -3
- data/CONTRIBUTING.md +20 -0
- data/Contributing_OSS/CyberArk_Open_Source_Contributor_Agreement.pdf +0 -0
- data/Dockerfile +14 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +51 -0
- data/Jenkinsfile +160 -0
- data/NOTICES.txt +25 -0
- data/README.md +2 -2
- data/Rakefile +10 -0
- data/SECURITY.md +42 -0
- data/build.sh +5 -0
- data/parse_a_changelog.gemspec +26 -0
- data/publish.sh +25 -0
- data/spec/fixtures/correct.md +31 -0
- data/spec/fixtures/correct_empty_diff.md +28 -0
- data/spec/fixtures/correct_empty_unreleased.md +26 -0
- data/spec/fixtures/correct_https.md +31 -0
- data/spec/fixtures/correct_initial_tag.md +32 -0
- data/spec/fixtures/correct_no_semver.md +30 -0
- data/spec/fixtures/correct_with_4_digit_version.md +20 -0
- data/spec/fixtures/correct_with_4_digit_version_and_metadata.md +20 -0
- data/spec/fixtures/correct_with_4_digit_version_and_pre_release.md +52 -0
- data/spec/fixtures/correct_with_metadata.md +20 -0
- data/spec/fixtures/correct_with_pre_release.md +52 -0
- data/spec/fixtures/incorrect_change_prefix.md +31 -0
- data/spec/fixtures/incorrect_release_header_delimiter.md +31 -0
- data/spec/fixtures/malformed_change_header.md +31 -0
- data/spec/fixtures/malformed_changelog_header.md +31 -0
- data/spec/fixtures/malformed_diff_version.md +10 -0
- data/spec/fixtures/malformed_release_date.md +31 -0
- data/spec/fixtures/malformed_release_header.md +31 -0
- data/spec/fixtures/malformed_release_version.md +31 -0
- data/spec/fixtures/malformed_unreleased_header.md +31 -0
- data/spec/fixtures/missing_newline_at_eof.md +31 -0
- data/spec/fixtures/missing_newline_before_diffs.md +30 -0
- data/spec/fixtures/missing_newline_before_releases.md +30 -0
- data/spec/fixtures/missing_newline_before_unreleased.md +30 -0
- data/spec/fixtures/missing_newline_between_changes.md +30 -0
- data/spec/fixtures/missing_release_date.md +31 -0
- data/spec/fixtures/no_releases.md +12 -0
- data/spec/fixtures/unknown_change_type.md +31 -0
- data/spec/parser_spec.rb +163 -0
- data/test.sh +17 -0
- metadata +85 -11
- data/VERSION +0 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 594f7864c6c0796a0b7ca594e7a3ae300c40d95de69503965e344d59262ecc53
|
|
4
|
+
data.tar.gz: 9ca6b5ccb862ee81fbb5eaec6b1b86b020ff7db0ec8bf7f527024936bc32d03b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5a184949c38c71e5519d66477c32b2235f2a0dc98eef5785658c419c07de1a8f17b026d7edab61d5b987a0aa31493330432d7f5bd449c09802f0ab37a3fc6b85
|
|
7
|
+
data.tar.gz: effa83d57427feeab570a95166c7d7eb09274736b9d25021539ea0530081736a81bca0345b365fbba1ff6cfea13d18c14281a7e91930d77757b2309673c9ee13
|
data/.codeclimate.yml
ADDED
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
# This is our default .CodeClimate.yml, broken out by language. Uncomment the
|
|
2
|
+
# sections at the bottom that apply to your project. ACTION comments indicate
|
|
3
|
+
# places where config might need to be tweaked.
|
|
4
|
+
|
|
5
|
+
version: "2"
|
|
6
|
+
|
|
7
|
+
plugins:
|
|
8
|
+
|
|
9
|
+
# ---------------
|
|
10
|
+
# Cross-language plugins. Should always be on.
|
|
11
|
+
|
|
12
|
+
duplication: # Looks for similar and identical code blocks
|
|
13
|
+
enabled: true
|
|
14
|
+
config:
|
|
15
|
+
languages:
|
|
16
|
+
go:
|
|
17
|
+
java:
|
|
18
|
+
javascript:
|
|
19
|
+
php:
|
|
20
|
+
python:
|
|
21
|
+
python_version: 3 # ACTION Comment this out if using Python 2
|
|
22
|
+
ruby:
|
|
23
|
+
swift:
|
|
24
|
+
typescript:
|
|
25
|
+
|
|
26
|
+
fixme: # Flags any FIXME, TODO, BUG, XXX, HACK comments so they can be fixed
|
|
27
|
+
enabled: true
|
|
28
|
+
config:
|
|
29
|
+
strings:
|
|
30
|
+
- FIXME
|
|
31
|
+
- TODO
|
|
32
|
+
- HACK
|
|
33
|
+
- XXX
|
|
34
|
+
- BUG
|
|
35
|
+
|
|
36
|
+
# ---------------
|
|
37
|
+
# Commonly-used languages - run time is minimal and all of these will work
|
|
38
|
+
# whether files of that language are found or not. In general, leave uncommented
|
|
39
|
+
|
|
40
|
+
# Markdown
|
|
41
|
+
markdownlint:
|
|
42
|
+
enabled: true
|
|
43
|
+
|
|
44
|
+
# Go
|
|
45
|
+
gofmt:
|
|
46
|
+
enabled: true
|
|
47
|
+
golint:
|
|
48
|
+
enabled: true
|
|
49
|
+
govet:
|
|
50
|
+
enabled: true
|
|
51
|
+
|
|
52
|
+
# Ruby
|
|
53
|
+
flog:
|
|
54
|
+
enabled: true
|
|
55
|
+
reek:
|
|
56
|
+
enabled: true
|
|
57
|
+
rubocop:
|
|
58
|
+
enabled: true
|
|
59
|
+
channel: rubocop-0-79 # As of March 10, 2020, rubocop 0.80.1 is the latest
|
|
60
|
+
# However, it does not work with CodeClimate - throws
|
|
61
|
+
# an Invalid JSON error.
|
|
62
|
+
# ACTION uncomment bundler-audit below if using Gemfile/Gemfile.lock
|
|
63
|
+
# ACTION uncomment brakeman below if using Rails
|
|
64
|
+
|
|
65
|
+
# Shell scripts
|
|
66
|
+
shellcheck:
|
|
67
|
+
enabled: true
|
|
68
|
+
|
|
69
|
+
# ---------------
|
|
70
|
+
# Other languages - will work with or without language files present. Again,
|
|
71
|
+
# runtime is minimal, so OK to leave uncommented.
|
|
72
|
+
|
|
73
|
+
# CoffeeScript
|
|
74
|
+
coffeelint:
|
|
75
|
+
enabled: true
|
|
76
|
+
|
|
77
|
+
# CSS
|
|
78
|
+
csslint:
|
|
79
|
+
enabled: true
|
|
80
|
+
|
|
81
|
+
# Groovy
|
|
82
|
+
codenarc:
|
|
83
|
+
enabled: true
|
|
84
|
+
|
|
85
|
+
# Java
|
|
86
|
+
pmd:
|
|
87
|
+
enabled: true
|
|
88
|
+
sonar-java:
|
|
89
|
+
enabled: true
|
|
90
|
+
config:
|
|
91
|
+
sonar.java.source: "7" # ACTION set this to the major version of Java used
|
|
92
|
+
# ACTION uncomment checkstyle below if Java code exists in repo
|
|
93
|
+
|
|
94
|
+
# Node.js
|
|
95
|
+
nodesecurity:
|
|
96
|
+
enabled: true
|
|
97
|
+
# ACTION uncomment eslint below if JavaScript already exists and .eslintrc
|
|
98
|
+
# file exists in repo
|
|
99
|
+
|
|
100
|
+
# PHP
|
|
101
|
+
phan:
|
|
102
|
+
enabled: true
|
|
103
|
+
config:
|
|
104
|
+
file_extensions: "php"
|
|
105
|
+
phpcodesniffer:
|
|
106
|
+
enabled: true
|
|
107
|
+
config:
|
|
108
|
+
file_extensions: "php,inc,lib"
|
|
109
|
+
# Using Wordpress standards as our one PHP repo is a Wordpress theme
|
|
110
|
+
standards: "PSR1,PSR2,WordPress,WordPress-Core,WordPress-Extra"
|
|
111
|
+
phpmd:
|
|
112
|
+
enabled: true
|
|
113
|
+
config:
|
|
114
|
+
file_extensions: "php,inc,lib"
|
|
115
|
+
rulesets: "cleancode,codesize,controversial,naming,unusedcode"
|
|
116
|
+
sonar-php:
|
|
117
|
+
enabled: true
|
|
118
|
+
|
|
119
|
+
# Python
|
|
120
|
+
bandit:
|
|
121
|
+
enabled: true
|
|
122
|
+
pep8:
|
|
123
|
+
enabled: true
|
|
124
|
+
radon:
|
|
125
|
+
enabled: true
|
|
126
|
+
# config:
|
|
127
|
+
# python_version: 2 # ACTION Uncomment these 2 lines if using Python 2
|
|
128
|
+
sonar-python:
|
|
129
|
+
enabled: true
|
|
130
|
+
|
|
131
|
+
# ---------------
|
|
132
|
+
# Configuration Required Language specific - these will error and abort the
|
|
133
|
+
# codeclimate run if they are turned on and certain files or configuration are
|
|
134
|
+
# missing. Should be commented out unless the project already includes the
|
|
135
|
+
# necessary files that the linter looks at
|
|
136
|
+
|
|
137
|
+
# Ruby - requires presence of Gemfile and Gemfile.lock
|
|
138
|
+
bundler-audit:
|
|
139
|
+
enabled: true
|
|
140
|
+
|
|
141
|
+
# Rails - requires detecting a Rails application
|
|
142
|
+
# brakeman:
|
|
143
|
+
# enabled: true
|
|
144
|
+
|
|
145
|
+
# Chef - requires detecting a cookbook
|
|
146
|
+
# foodcritic:
|
|
147
|
+
# enabled: true
|
|
148
|
+
|
|
149
|
+
# Java - might require Java code? Errored when run without
|
|
150
|
+
# checkstyle:
|
|
151
|
+
# enabled: true
|
|
152
|
+
|
|
153
|
+
# JavaScript - requires an eslintrc to be created and added to project
|
|
154
|
+
# eslint:
|
|
155
|
+
# enabled: true
|
|
156
|
+
# channel: "eslint-6"
|
|
157
|
+
|
|
158
|
+
# ---------------
|
|
159
|
+
# List any files/folders to exclude from checking. Wildcards accepted. Leave
|
|
160
|
+
# commented if no files to exclude as an empty array will error
|
|
161
|
+
exclude_patterns:
|
|
162
|
+
- ".gitignore"
|
data/.github/CODEOWNERS
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
* @cyberark/community-and-integrations-team @conjurinc/community-and-integrations-team @conjurdemos/community-and-integrations-team @conjur-enterprise/community-and-integrations @cyberark/conjur-core-team @conjurinc/conjur-core-team @conjurdemos/conjur-core-team @conjur-enterprise/conjur-core
|
|
2
|
+
|
|
3
|
+
# Changes to .trivyignore[.yml] require Security Architect approval
|
|
4
|
+
.trivyignore* @cyberark/security-architects @conjurinc/security-architects @conjurdemos/security-architects @conjur-enterprise/conjur-security
|
|
5
|
+
|
|
6
|
+
# Changes to .codeclimate.yml require Quality Architect approval
|
|
7
|
+
.codeclimate.yml @cyberark/quality-architects @conjurinc/quality-architects @conjurdemos/quality-architects @conjur-enterprise/conjur-quality
|
|
8
|
+
# Changes to SECURITY.md require Security Architect approval
|
|
9
|
+
SECURITY.md @cyberark/security-architects @conjurinc/security-architects @conjurdemos/security-architects @conjur-enterprise/conjur-security
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/CHANGELOG.md
CHANGED
|
@@ -6,11 +6,19 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
-
## [1.3.
|
|
9
|
+
## [1.3.2] - 2024-11-05
|
|
10
|
+
### Changed
|
|
11
|
+
- Use internal auto release process (CNJR-5578)
|
|
12
|
+
|
|
13
|
+
## [1.3.0] - 2023-12-28
|
|
10
14
|
### Changed
|
|
11
15
|
- Allow versions to have 4 digits (eg., x.x.x.x)
|
|
12
16
|
[cyberark/parse-a-changelog#41](https://github.com/cyberark/parse-a-changelog/pulls/41)
|
|
13
17
|
|
|
18
|
+
### Security
|
|
19
|
+
- Updated Dockerfile base image to use latest Ruby v3 version
|
|
20
|
+
[cyberark/parse-a-changelog#46](https://github.com/cyberark/parse-a-changelog/pulls/46)
|
|
21
|
+
|
|
14
22
|
## [1.2.0] - 2021-06-20
|
|
15
23
|
### Changed
|
|
16
24
|
- Allow CHANGELOG without SemVer declaration.
|
|
@@ -82,8 +90,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
|
82
90
|
- Open source license and contributing information
|
|
83
91
|
- Change log and versioning information
|
|
84
92
|
|
|
85
|
-
[Unreleased]: https://github.com/cyberark/parse-a-changelog/compare/v1.3.
|
|
86
|
-
[1.2
|
|
93
|
+
[Unreleased]: https://github.com/cyberark/parse-a-changelog/compare/v1.3.1...HEAD
|
|
94
|
+
[1.3.2]: https://github.com/cyberark/parse-a-changelog/compare/v1.3.0...v1.3.2
|
|
95
|
+
[1.3.0]: https://github.com/cyberark/parse-a-changelog/compare/v1.2.0...v1.3.0
|
|
87
96
|
[1.2.0]: https://github.com/cyberark/parse-a-changelog/compare/v1.1.0...v1.2.0
|
|
88
97
|
[1.1.0]: https://github.com/cyberark/parse-a-changelog/compare/v1.0.2...v1.1.0
|
|
89
98
|
[1.0.2]: https://github.com/cyberark/parse-a-changelog/compare/v1.0.1...v1.0.2
|
data/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Contributing to parse-a-changelog
|
|
2
|
+
|
|
3
|
+
Thanks for your interest in `parse-a-changelog`!
|
|
4
|
+
|
|
5
|
+
For general contribution and community guidelines, please see the [community repo](https://github.com/cyberark/community).
|
|
6
|
+
In particular, before contributing please review our [contributor licensing guide](https://github.com/cyberark/community/blob/master/CONTRIBUTING.md#when-the-repo-does-not-include-the-cla)
|
|
7
|
+
to ensure your contribution is compliant with our contributor license agreements.
|
|
8
|
+
|
|
9
|
+
## Pull Request Workflow
|
|
10
|
+
|
|
11
|
+
1. Search the [open issues][issues] in GitHub to find out what has been planned
|
|
12
|
+
2. Open an issue in this repository to propose changes or fixes
|
|
13
|
+
3. Tag issue "in progress" as you work on it
|
|
14
|
+
4. Run RSpec tests as described [here][tests], ensuring they pass
|
|
15
|
+
5. Submit a pull request
|
|
16
|
+
6. Tag the issue "review", ask another contributor to review and merge your code
|
|
17
|
+
7. Close the issue
|
|
18
|
+
|
|
19
|
+
[tests]: README.md#Testing
|
|
20
|
+
[issues]: https://github.com/cyberark/parse-a-changelog/issues
|
|
Binary file
|
data/Dockerfile
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
parse_a_changelog (1.3.0)
|
|
5
|
+
treetop (~> 1.6)
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
byebug (11.1.3)
|
|
11
|
+
coderay (1.1.3)
|
|
12
|
+
diff-lcs (1.5.0)
|
|
13
|
+
method_source (1.0.0)
|
|
14
|
+
polyglot (0.3.5)
|
|
15
|
+
pry (0.13.1)
|
|
16
|
+
coderay (~> 1.1)
|
|
17
|
+
method_source (~> 1.0)
|
|
18
|
+
pry-byebug (3.9.0)
|
|
19
|
+
byebug (~> 11.0)
|
|
20
|
+
pry (~> 0.13.0)
|
|
21
|
+
rspec (3.12.0)
|
|
22
|
+
rspec-core (~> 3.12.0)
|
|
23
|
+
rspec-expectations (~> 3.12.0)
|
|
24
|
+
rspec-mocks (~> 3.12.0)
|
|
25
|
+
rspec-core (3.12.2)
|
|
26
|
+
rspec-support (~> 3.12.0)
|
|
27
|
+
rspec-expectations (3.12.3)
|
|
28
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
29
|
+
rspec-support (~> 3.12.0)
|
|
30
|
+
rspec-mocks (3.12.6)
|
|
31
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
32
|
+
rspec-support (~> 3.12.0)
|
|
33
|
+
rspec-support (3.12.1)
|
|
34
|
+
rspec_junit_formatter (0.4.1)
|
|
35
|
+
rspec-core (>= 2, < 4, != 2.12.0)
|
|
36
|
+
treetop (1.6.12)
|
|
37
|
+
polyglot (~> 0.3)
|
|
38
|
+
|
|
39
|
+
PLATFORMS
|
|
40
|
+
ruby
|
|
41
|
+
x86_64-darwin-16
|
|
42
|
+
x86_64-darwin-18
|
|
43
|
+
|
|
44
|
+
DEPENDENCIES
|
|
45
|
+
parse_a_changelog!
|
|
46
|
+
pry-byebug (~> 3.9.0)
|
|
47
|
+
rspec (~> 3.8)
|
|
48
|
+
rspec_junit_formatter (~> 0.4.1)
|
|
49
|
+
|
|
50
|
+
BUNDLED WITH
|
|
51
|
+
2.4.14
|
data/Jenkinsfile
ADDED
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
#!/usr/bin/env groovy
|
|
2
|
+
@Library("product-pipelines-shared-library") _
|
|
3
|
+
|
|
4
|
+
// Automated release, promotion and dependencies
|
|
5
|
+
properties([
|
|
6
|
+
// Include the automated release parameters for the build
|
|
7
|
+
release.addParams(),
|
|
8
|
+
// Dependencies of the project that should trigger builds
|
|
9
|
+
dependencies([])
|
|
10
|
+
])
|
|
11
|
+
|
|
12
|
+
// Performs release promotion. No other stages will be run
|
|
13
|
+
if (params.MODE == "PROMOTE") {
|
|
14
|
+
release.promote(params.VERSION_TO_PROMOTE) { infrapool, sourceVersion, targetVersion, assetDirectory ->
|
|
15
|
+
// Any assets from sourceVersion Github release are available in assetDirectory
|
|
16
|
+
// Any version number updates from sourceVersion to targetVersion occur here
|
|
17
|
+
// Any publishing of targetVersion artifacts occur here
|
|
18
|
+
// Anything added to assetDirectory will be attached to the Github Release
|
|
19
|
+
|
|
20
|
+
infrapool.agentSh "./publish.sh v${targetVersion}"
|
|
21
|
+
|
|
22
|
+
// Ensure the working directory is a safe git directory for the subsequent
|
|
23
|
+
// promotion operations after this block.
|
|
24
|
+
infrapool.agentSh 'git config --global --add safe.directory "$(pwd)"'
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Copy Github Enterprise release to Github
|
|
28
|
+
release.copyEnterpriseRelease(params.VERSION_TO_PROMOTE)
|
|
29
|
+
return
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
pipeline {
|
|
33
|
+
agent { label 'conjur-enterprise-common-agent' }
|
|
34
|
+
|
|
35
|
+
options {
|
|
36
|
+
timestamps()
|
|
37
|
+
buildDiscarder(logRotator(numToKeepStr: '30'))
|
|
38
|
+
timeout(time: 30, unit: 'MINUTES')
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
environment {
|
|
42
|
+
// Sets the MODE to the specified or autocalculated value as appropriate
|
|
43
|
+
MODE = release.canonicalizeMode()
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
triggers {
|
|
47
|
+
cron(getDailyCronString())
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
stages {
|
|
51
|
+
// Aborts any builds triggered by another project that wouldn't include any changes
|
|
52
|
+
stage ("Skip build if triggering job didn't create a release") {
|
|
53
|
+
when {
|
|
54
|
+
expression {
|
|
55
|
+
MODE == "SKIP"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
steps {
|
|
59
|
+
script {
|
|
60
|
+
currentBuild.result = 'ABORTED'
|
|
61
|
+
error("Aborting build because this build was triggered from upstream, but no release was built")
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
stage('Scan for internal URLs') {
|
|
67
|
+
steps {
|
|
68
|
+
script {
|
|
69
|
+
detectInternalUrls()
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
stage('Get InfraPool ExecutorV2 Agent') {
|
|
75
|
+
steps {
|
|
76
|
+
script {
|
|
77
|
+
// Request ExecutorV2 agents for 1 hour(s)
|
|
78
|
+
infrapool = getInfraPoolAgent.connected(type: "ExecutorV2", quantity: 1, duration: 1)[0]
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// Generates a VERSION file based on the current build number and latest version in CHANGELOG.md
|
|
84
|
+
stage('Validate Changelog and set version') {
|
|
85
|
+
steps {
|
|
86
|
+
script {
|
|
87
|
+
updateVersion(infrapool, "CHANGELOG.md", "${BUILD_NUMBER}")
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// Generates a VERSION file based on the current build number and latest version in CHANGELOG.md
|
|
93
|
+
stage('Validate changelog and set version') {
|
|
94
|
+
steps {
|
|
95
|
+
updateVersion(infrapool, "CHANGELOG.md", "${BUILD_NUMBER}")
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
stage("Build Docker Image"){
|
|
100
|
+
steps {
|
|
101
|
+
script {
|
|
102
|
+
infrapool.agentSh './build.sh'
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
stage('Test') {
|
|
108
|
+
steps {
|
|
109
|
+
script {
|
|
110
|
+
infrapool.agentSh './test.sh'
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
post {
|
|
114
|
+
always{
|
|
115
|
+
script {
|
|
116
|
+
infrapool.agentStash name: 'rspec_junit', includes: 'rspec_junit.xml'
|
|
117
|
+
unstash 'rspec_junit'
|
|
118
|
+
junit 'rspec_junit.xml'
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
stage('Release') {
|
|
125
|
+
when {
|
|
126
|
+
expression {
|
|
127
|
+
MODE == "RELEASE"
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
steps {
|
|
132
|
+
script {
|
|
133
|
+
release(infrapool) { billOfMaterialsDirectory, assetDirectory ->
|
|
134
|
+
/* Publish release artifacts to all the appropriate locations
|
|
135
|
+
Copy any artifacts to assetDirectory on the infrapool node
|
|
136
|
+
to attach them to the Github release.
|
|
137
|
+
|
|
138
|
+
If your assets are on the infrapool node in the target
|
|
139
|
+
directory, use a copy like this:
|
|
140
|
+
infrapool.agentSh "cp target/* ${assetDirectory}"
|
|
141
|
+
Note That this will fail if there are no assets, add :||
|
|
142
|
+
if you want the release to succeed with no assets.
|
|
143
|
+
|
|
144
|
+
If your assets are in target on the main Jenkins agent, use:
|
|
145
|
+
infrapool.agentPut(from: 'target/', to: assetDirectory)
|
|
146
|
+
*/
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
post {
|
|
154
|
+
always {
|
|
155
|
+
script {
|
|
156
|
+
releaseInfraPoolAgent(".infrapool/release_agents")
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
data/NOTICES.txt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
------------------
|
|
2
|
+
|
|
3
|
+
The following libraries licensed under the MIT license are used
|
|
4
|
+
within this repository:
|
|
5
|
+
|
|
6
|
+
* rspec - https://rubygems.org/gems/rspec
|
|
7
|
+
* treetop - https://rubygems.org/gems/treetop/versions/1.6.12
|
|
8
|
+
|
|
9
|
+
MIT License - https://opensource.org/licenses/MIT
|
|
10
|
+
|
|
11
|
+
Copyright 2017 CyberArk Software, Inc.
|
|
12
|
+
|
|
13
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
|
|
14
|
+
and associated documentation files (the "Software"), to deal in the Software without restriction,
|
|
15
|
+
including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
16
|
+
and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
|
|
17
|
+
subject to the following conditions:
|
|
18
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial
|
|
19
|
+
portions of the Software.
|
|
20
|
+
|
|
21
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
|
|
22
|
+
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
23
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
24
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
|
|
25
|
+
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
CHANGED
|
@@ -4,10 +4,10 @@ This gem can be used to validate that a file conforms to the [Keep a Changelog](
|
|
|
4
4
|
|
|
5
5
|
## Usage
|
|
6
6
|
|
|
7
|
-
Add `
|
|
7
|
+
Add `parse_a_changelog` to your `Gemfile` and `bundle install` or install it directly with:
|
|
8
8
|
|
|
9
9
|
```
|
|
10
|
-
gem install
|
|
10
|
+
gem install parse_a_changelog
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
The gem includes a binary that can be run with the changelog file as its single argument:
|
data/Rakefile
ADDED
data/SECURITY.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Security Policies and Procedures
|
|
2
|
+
|
|
3
|
+
This document outlines security procedures and general policies for the CyberArk Conjur
|
|
4
|
+
suite of tools and products.
|
|
5
|
+
|
|
6
|
+
* [Reporting a Bug](#reporting-a-bug)
|
|
7
|
+
* [Disclosure Policy](#disclosure-policy)
|
|
8
|
+
* [Comments on this Policy](#comments-on-this-policy)
|
|
9
|
+
|
|
10
|
+
## Reporting a Bug
|
|
11
|
+
|
|
12
|
+
The CyberArk Conjur team and community take all security bugs in the Conjur suite seriously.
|
|
13
|
+
Thank you for improving the security of the Conjur suite. We appreciate your efforts and
|
|
14
|
+
responsible disclosure and will make every effort to acknowledge your
|
|
15
|
+
contributions.
|
|
16
|
+
|
|
17
|
+
Report security bugs by emailing the lead maintainers at security@conjur.org.
|
|
18
|
+
|
|
19
|
+
The maintainers will acknowledge your email within 2 business days. Subsequently, we will
|
|
20
|
+
send a more detailed response within 2 business days of our acknowledgement indicating
|
|
21
|
+
the next steps in handling your report. After the initial reply to your report, the security
|
|
22
|
+
team will endeavor to keep you informed of the progress towards a fix and full
|
|
23
|
+
announcement, and may ask for additional information or guidance.
|
|
24
|
+
|
|
25
|
+
Report security bugs in third-party modules to the person or team maintaining
|
|
26
|
+
the module.
|
|
27
|
+
|
|
28
|
+
## Disclosure Policy
|
|
29
|
+
|
|
30
|
+
When the security team receives a security bug report, they will assign it to a
|
|
31
|
+
primary handler. This person will coordinate the fix and release process,
|
|
32
|
+
involving the following steps:
|
|
33
|
+
|
|
34
|
+
* Confirm the problem and determine the affected versions.
|
|
35
|
+
* Audit code to find any potential similar problems.
|
|
36
|
+
* Prepare fixes for all releases still under maintenance. These fixes will be
|
|
37
|
+
released as fast as possible.
|
|
38
|
+
|
|
39
|
+
## Comments on this Policy
|
|
40
|
+
|
|
41
|
+
If you have suggestions on how this process could be improved please submit a
|
|
42
|
+
pull request.
|
data/build.sh
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
Gem::Specification.new do |spec|
|
|
2
|
+
spec.name = "parse_a_changelog"
|
|
3
|
+
# If a "VERSION" file exists (created by Jenkins), use it. Otherwise, use "unreleased".
|
|
4
|
+
spec.version = `if [ -f VERSION ]; then cat < VERSION; else echo "0.0.1-unreleased"; fi`
|
|
5
|
+
spec.authors = ["John Tuttle"]
|
|
6
|
+
spec.email = "jtuttle.develops@gmail.com"
|
|
7
|
+
|
|
8
|
+
spec.summary = %q{A validator for the keep-a-changelog format}
|
|
9
|
+
spec.description = %q{Uses a grammar describing the keep-a-changelog format to attempt to parse a given file.}
|
|
10
|
+
spec.homepage = "http://github.com/cyberark/parse-a-changelog"
|
|
11
|
+
spec.license = "Apache-2.0"
|
|
12
|
+
|
|
13
|
+
#spec.files = Dir.glob("{bin,lib}/**/*") + %w(LICENSE README.md CHANGELOG.md VERSION)
|
|
14
|
+
spec.files = `git ls-files`.split($\)
|
|
15
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
16
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
17
|
+
#spec.files = `git ls-files`.split($\) + %w(LICENSE README.md CHANGELOG.md VERSION)
|
|
18
|
+
spec.bindir = 'bin'
|
|
19
|
+
#spec.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
20
|
+
spec.require_paths = ["lib"]
|
|
21
|
+
|
|
22
|
+
spec.add_dependency 'treetop', '~> 1.6'
|
|
23
|
+
spec.add_development_dependency 'rspec', '~> 3.12'
|
|
24
|
+
spec.add_development_dependency 'rspec_junit_formatter', '~> 0.6'
|
|
25
|
+
spec.add_development_dependency 'pry-byebug', '~> 3.10'
|
|
26
|
+
end
|
data/publish.sh
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
# This script will publish to rubygems and dockerhub
|
|
6
|
+
|
|
7
|
+
# Clone the release-tools repository if it doesn't exist
|
|
8
|
+
if [ ! -d release-tools ]; then
|
|
9
|
+
git clone git@github.com:conjurinc/release-tools.git
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
export PATH=$PWD/release-tools/bin/:$PATH
|
|
13
|
+
|
|
14
|
+
# Build and publish rubygem
|
|
15
|
+
summon --yaml "RUBYGEMS_API_KEY: !var rubygems/api-key" \
|
|
16
|
+
publish-rubygem parse_a_changelog
|
|
17
|
+
|
|
18
|
+
# Publish to Docker Hub
|
|
19
|
+
TAG_NAME=$1
|
|
20
|
+
DOCKERHUB_IMAGE="cyberark/parse-a-changelog"
|
|
21
|
+
docker tag parse-a-changelog "${DOCKERHUB_IMAGE}:latest"
|
|
22
|
+
docker tag parse-a-changelog "${DOCKERHUB_IMAGE}:${TAG_NAME}"
|
|
23
|
+
|
|
24
|
+
docker push "${DOCKERHUB_IMAGE}:latest"
|
|
25
|
+
docker push "${DOCKERHUB_IMAGE}:${TAG_NAME}"
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
All notable changes to this project will be documented in this file.
|
|
3
|
+
|
|
4
|
+
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
|
5
|
+
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
6
|
+
|
|
7
|
+
## [Unreleased]
|
|
8
|
+
### Added
|
|
9
|
+
- Added a thing.
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
- Changed a thing.
|
|
13
|
+
|
|
14
|
+
## [1.0.0] - 2019-01-03
|
|
15
|
+
### Deprecated
|
|
16
|
+
- Some things were deprecated.
|
|
17
|
+
|
|
18
|
+
## 0.1.0 - 2018-11-28
|
|
19
|
+
### Removed
|
|
20
|
+
- Removed all
|
|
21
|
+
the things.
|
|
22
|
+
|
|
23
|
+
### Fixed
|
|
24
|
+
- Fixed all the bugs from the non-existent previous release.
|
|
25
|
+
|
|
26
|
+
### Security
|
|
27
|
+
- We are so secure now.
|
|
28
|
+
- The securest.
|
|
29
|
+
|
|
30
|
+
[Unreleased]: https://github.com/conjurinc/evoke/compare/v1.0.0...HEAD
|
|
31
|
+
[1.0.0]: https://github.com/conjurinc/evoke/compare/v0.1.0...v1.0.0
|