ood_support 0.0.2 → 0.0.5
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 +5 -5
- data/.github/dependabot.yml +8 -0
- data/.github/workflows/publish.yml +43 -0
- data/CHANGELOG.md +36 -7
- data/LICENSE.txt +1 -1
- data/lib/ood_support/acl.rb +2 -2
- data/lib/ood_support/acl_entry.rb +3 -2
- data/lib/ood_support/acls/nfs4.rb +2 -2
- data/lib/ood_support/group.rb +5 -5
- data/lib/ood_support/user.rb +5 -5
- data/lib/ood_support/version.rb +1 -1
- data/ood_support.gemspec +2 -2
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 646b7459fdab45e78a1bc46aada89aa24c9434f0af8017e5086966e9c87db297
|
4
|
+
data.tar.gz: 79a6ff76689e1c71de156b0e48ac4fc92a76a994c16656dbe51005ff1fe39355
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4eb3570e062a7898aa88598b4991e6c1c5144be13ffc8cefad9eb76de6948808dae52ba237fa655c3c26d1cfec543a60e35c4754f13fb43bb0981ae0a5df794f
|
7
|
+
data.tar.gz: e56b1bc263ddc7f6cd9e5c6226d3ed99b37416455a10c2343168ea68aafb055d39d5ae233e35b0e2ec35a3f59cc2a3c88f51b9c2b30baa98b6851fcec1ca13ba
|
@@ -0,0 +1,43 @@
|
|
1
|
+
name: Publish Gem
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
tags:
|
6
|
+
- "*"
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
publish:
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
|
12
|
+
steps:
|
13
|
+
- name: Set version
|
14
|
+
id: version
|
15
|
+
run: echo "version=${GITHUB_REF#refs/*/v}" >> $GITHUB_OUTPUT
|
16
|
+
|
17
|
+
- name: checkout
|
18
|
+
uses: actions/checkout@v3
|
19
|
+
|
20
|
+
- name: Setup Ruby using Bundler
|
21
|
+
uses: ruby/setup-ruby@v1
|
22
|
+
with:
|
23
|
+
ruby-version: "2.7.1"
|
24
|
+
bundler-cache: true
|
25
|
+
bundler: "2.2"
|
26
|
+
|
27
|
+
- name: install gems
|
28
|
+
run: bundle install
|
29
|
+
|
30
|
+
- name: Setup Rubygems credentials
|
31
|
+
run: |
|
32
|
+
set +x
|
33
|
+
mkdir -p ~/.gem
|
34
|
+
cat << EOF > ~/.gem/credentials
|
35
|
+
---
|
36
|
+
:rubygems_api_key: ${{ secrets.OSC_ROBOT_RUBYGEMS_TOKEN }}
|
37
|
+
EOF
|
38
|
+
chmod 0600 ~/.gem/credentials
|
39
|
+
|
40
|
+
- name: Publish Gem
|
41
|
+
run: |
|
42
|
+
bundle exec rake build
|
43
|
+
gem push pkg/ood_support-${{ steps.version.outputs.version }}.gem
|
data/CHANGELOG.md
CHANGED
@@ -1,12 +1,41 @@
|
|
1
|
-
|
1
|
+
# Changelog
|
2
|
+
All notable changes to this project will be documented in this file.
|
2
3
|
|
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).
|
4
6
|
|
5
|
-
|
7
|
+
## [Unreleased]
|
6
8
|
|
7
|
-
|
8
|
-
compatibility
|
9
|
+
## [0.0.5] - 2023-02-24
|
9
10
|
|
10
|
-
|
11
|
+
- No functional difference with 0.0.4. This is only updates to the automation.
|
11
12
|
|
12
|
-
|
13
|
+
## [0.0.4] - 2023-02-24
|
14
|
+
|
15
|
+
### Fixed
|
16
|
+
- [12](https://github.com/OSC/ood_support/issues/12) adds initial support for Ruby 3.
|
17
|
+
|
18
|
+
## [0.0.3] - 2017-11-17
|
19
|
+
### Changed
|
20
|
+
- Updated the `CHANGELOG.md` formatting.
|
21
|
+
[#3](https://github.com/OSC/ood_support/issues/3)
|
22
|
+
- Updated `LICENSE.txt` dates.
|
23
|
+
|
24
|
+
### Fixed
|
25
|
+
- Added support for Ruby 2.4 by replacing deprecated `Fixnum` with `Integer`.
|
26
|
+
[#4](https://github.com/OSC/ood_support/issues/4)
|
27
|
+
|
28
|
+
## [0.0.2] - 2016-08-26
|
29
|
+
### Fixed
|
30
|
+
- Added aliases `User#home` and `User#member_of_group?` for backwards
|
31
|
+
compatibility.
|
32
|
+
|
33
|
+
## 0.0.1 - 2016-07-01
|
34
|
+
### Added
|
35
|
+
- Initial release!
|
36
|
+
|
37
|
+
[Unreleased]: https://github.com/OSC/ood_support/compare/v0.0.5...HEAD
|
38
|
+
[0.0.5]: https://github.com/OSC/ood_support/compare/v0.0.4...v0.0.5
|
39
|
+
[0.0.4]: https://github.com/OSC/ood_support/compare/v0.0.3...v0.0.4
|
40
|
+
[0.0.3]: https://github.com/OSC/ood_support/compare/v0.0.2...v0.0.3
|
41
|
+
[0.0.2]: https://github.com/OSC/ood_support/compare/v0.0.1...v0.0.2
|
data/LICENSE.txt
CHANGED
data/lib/ood_support/acl.rb
CHANGED
@@ -21,7 +21,7 @@ module OodSupport
|
|
21
21
|
new(entries: entries, **kwargs)
|
22
22
|
end
|
23
23
|
|
24
|
-
# @param entries [
|
24
|
+
# @param entries [Array<ACLEntry>] list of entries
|
25
25
|
# @param default [Boolean] default allow, otherwise deny
|
26
26
|
def initialize(entries:, default: false)
|
27
27
|
@entries = entries
|
@@ -63,7 +63,7 @@ module OodSupport
|
|
63
63
|
end
|
64
64
|
|
65
65
|
# Generates a hash value for this object
|
66
|
-
# @return [
|
66
|
+
# @return [Integer] hash value of object
|
67
67
|
def hash
|
68
68
|
[self.class, to_h].hash
|
69
69
|
end
|
@@ -13,7 +13,8 @@ module OodSupport
|
|
13
13
|
# @raise [InvalidACLEntry] unable to parse entry string
|
14
14
|
# @return [ACLEntry] entry generated by string
|
15
15
|
def self.parse(entry, **kwargs)
|
16
|
-
|
16
|
+
args = parse_entry(entry).merge(kwargs)
|
17
|
+
new(**args)
|
17
18
|
end
|
18
19
|
|
19
20
|
# @param principle [#to_s] principle for this ACL entry
|
@@ -62,7 +63,7 @@ module OodSupport
|
|
62
63
|
end
|
63
64
|
|
64
65
|
# Generates a hash value for this object
|
65
|
-
# @return [
|
66
|
+
# @return [Integer] hash value of object
|
66
67
|
def hash
|
67
68
|
[self.class, to_s].hash
|
68
69
|
end
|
@@ -93,7 +93,7 @@ module OodSupport
|
|
93
93
|
# @param group [#to_s] name of group
|
94
94
|
# @see ACL#initialize
|
95
95
|
def initialize(owner:, group:, **kwargs)
|
96
|
-
super(kwargs.merge(default: false))
|
96
|
+
super(**kwargs.merge(default: false))
|
97
97
|
@owner = owner.to_s
|
98
98
|
@group = group.to_s
|
99
99
|
end
|
@@ -160,7 +160,7 @@ module OodSupport
|
|
160
160
|
@flags = flags.map(&:to_sym)
|
161
161
|
@domain = domain.to_s
|
162
162
|
@permissions = permissions.map(&:to_sym)
|
163
|
-
super(kwargs)
|
163
|
+
super(**kwargs)
|
164
164
|
end
|
165
165
|
|
166
166
|
# Is this an "allow" ACL entry
|
data/lib/ood_support/group.rb
CHANGED
@@ -6,16 +6,16 @@ module OodSupport
|
|
6
6
|
include Comparable
|
7
7
|
|
8
8
|
# The id of the group
|
9
|
-
# @return [
|
9
|
+
# @return [Integer] the group id
|
10
10
|
attr_reader :id
|
11
11
|
|
12
12
|
# The name of the group
|
13
13
|
# @return [String] the group name
|
14
14
|
attr_reader :name
|
15
15
|
|
16
|
-
# @param group [
|
16
|
+
# @param group [Integer, #to_s] the group id or name
|
17
17
|
def initialize(group = Process.group)
|
18
|
-
if group.is_a?(
|
18
|
+
if group.is_a?(Integer)
|
19
19
|
@id = group
|
20
20
|
@name = Etc.getgrgid(@id).name
|
21
21
|
else
|
@@ -26,7 +26,7 @@ module OodSupport
|
|
26
26
|
|
27
27
|
# The comparison operator for sorting values
|
28
28
|
# @param other [#to_s] group to compare against
|
29
|
-
# @return [
|
29
|
+
# @return [Integer] how groups compare
|
30
30
|
def <=>(other)
|
31
31
|
name <=> other
|
32
32
|
end
|
@@ -40,7 +40,7 @@ module OodSupport
|
|
40
40
|
end
|
41
41
|
|
42
42
|
# Generates a hash value for this object
|
43
|
-
# @return [
|
43
|
+
# @return [Integer] hash value of object
|
44
44
|
def hash
|
45
45
|
[self.class, name].hash
|
46
46
|
end
|
data/lib/ood_support/user.rb
CHANGED
@@ -30,9 +30,9 @@ module OodSupport
|
|
30
30
|
|
31
31
|
alias_method :home, :dir
|
32
32
|
|
33
|
-
# @param user [
|
33
|
+
# @param user [Integer, #to_s] user id or name
|
34
34
|
def initialize(user = Process.user)
|
35
|
-
@passwd = user.is_a?(
|
35
|
+
@passwd = user.is_a?(Integer) ? Etc.getpwuid(user) : Etc.getpwnam(user.to_s)
|
36
36
|
end
|
37
37
|
|
38
38
|
# Determine whether user is part of specified group
|
@@ -51,14 +51,14 @@ module OodSupport
|
|
51
51
|
end
|
52
52
|
|
53
53
|
# List of all groups that user belongs to
|
54
|
-
# @return [Array<
|
54
|
+
# @return [Array<Group>] list of groups user is in
|
55
55
|
def groups
|
56
56
|
@groups ||= get_groups
|
57
57
|
end
|
58
58
|
|
59
59
|
# The comparison operator for sorting values
|
60
60
|
# @param other [#to_s] user to compare against
|
61
|
-
# @return [
|
61
|
+
# @return [Integer] how users compare
|
62
62
|
def <=>(other)
|
63
63
|
name <=> other
|
64
64
|
end
|
@@ -72,7 +72,7 @@ module OodSupport
|
|
72
72
|
end
|
73
73
|
|
74
74
|
# Generates a hash value for this object
|
75
|
-
# @return [
|
75
|
+
# @return [Integer] hash value of object
|
76
76
|
def hash
|
77
77
|
[self.class, name].hash
|
78
78
|
end
|
data/lib/ood_support/version.rb
CHANGED
data/ood_support.gemspec
CHANGED
@@ -18,6 +18,6 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_development_dependency "bundler", "~>
|
22
|
-
spec.add_development_dependency "rake", "~>
|
21
|
+
spec.add_development_dependency "bundler", "~> 2.2"
|
22
|
+
spec.add_development_dependency "rake", "~> 13.0.1"
|
23
23
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ood_support
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeremy Nicklas
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-02-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '2.2'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '2.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 13.0.1
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 13.0.1
|
41
41
|
description: Provides an interface to working with the local OS installed on the HPC
|
42
42
|
Center's web node.
|
43
43
|
email:
|
@@ -46,6 +46,8 @@ executables: []
|
|
46
46
|
extensions: []
|
47
47
|
extra_rdoc_files: []
|
48
48
|
files:
|
49
|
+
- ".github/dependabot.yml"
|
50
|
+
- ".github/workflows/publish.yml"
|
49
51
|
- ".gitignore"
|
50
52
|
- CHANGELOG.md
|
51
53
|
- Gemfile
|
@@ -82,10 +84,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
82
84
|
- !ruby/object:Gem::Version
|
83
85
|
version: '0'
|
84
86
|
requirements: []
|
85
|
-
|
86
|
-
rubygems_version: 2.4.5
|
87
|
+
rubygems_version: 3.1.2
|
87
88
|
signing_key:
|
88
89
|
specification_version: 4
|
89
90
|
summary: Open OnDemand gem that adds useful support methods for an HPC Center.
|
90
91
|
test_files: []
|
91
|
-
has_rdoc:
|