metanorma-ietf-data 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/check_update.yml +44 -0
- data/.github/workflows/rake.yml +43 -0
- data/.gitignore +2 -0
- data/.hound.yml +5 -0
- data/.rubocop.yml +10 -0
- data/Gemfile +12 -0
- data/README.md +35 -0
- data/Rakefile +8 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/bin/wg2json.rb +33 -0
- data/lib/metanorma/ietf/data/version.rb +9 -0
- data/lib/metanorma/ietf/data/workgroup.json +1 -0
- data/metanorma-ietf-data.gemspec +30 -0
- metadata +59 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 4c3334c0a16f32c2f54b5b564be3b330f7fb517e6c3763d959d8cb7ed357f6c7
|
4
|
+
data.tar.gz: a4d4269383236cda9d406e067ae1fabb99f9cf0b30c8c9e47e44a58b206cd93d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 46b5c3d7dce000c6d6f30b872d312af2e4a69d109294d1aef4c3c7a2aaed3fb4b7ec436e148eee57bb9da2321eeccf7aa1f1e00e0be528def09f0a1b102c93fb
|
7
|
+
data.tar.gz: c7bab87d3bcd7d8016fae3f8399221445d692446cdf5cca5dbc3a18450447a28281091ba34758c84945a0830b6c8c49ca602d4a8a059247d91d93fc17dda464d
|
@@ -0,0 +1,44 @@
|
|
1
|
+
name: check_update
|
2
|
+
|
3
|
+
on:
|
4
|
+
schedule:
|
5
|
+
- cron: "0 0 * * *"
|
6
|
+
workflow_dispatch:
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
check_update:
|
10
|
+
name: Check updates on https://tools.ietf.org/wg/
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v2
|
14
|
+
|
15
|
+
- run: |
|
16
|
+
git config user.name github-actions
|
17
|
+
git config user.email github-actions@github.com
|
18
|
+
|
19
|
+
- uses: ruby/setup-ruby@v1
|
20
|
+
with:
|
21
|
+
ruby-version: ${{ matrix.ruby }}
|
22
|
+
bundler-cache: true
|
23
|
+
|
24
|
+
- id: update_json
|
25
|
+
run: |
|
26
|
+
bundle exec bin/wg2json.rb > lib/metanorma/ietf/data/workgroup.json
|
27
|
+
git diff-index --quiet HEAD -- && has_changes="false" || has_changes="true"
|
28
|
+
echo "::set-output name=has_changes::${has_changes}"
|
29
|
+
|
30
|
+
- if: ${{ !steps.update_json.outputs.has_changes == 'true' }}
|
31
|
+
run: gem bump --version patch --tag --push
|
32
|
+
|
33
|
+
- if: ${{ !steps.update_json.outputs.has_changes == 'true' }}
|
34
|
+
name: publish to rubygems.org
|
35
|
+
env:
|
36
|
+
RUBYGEMS_API_KEY: ${{secrets.METANORMA_CI_RUBYGEMS_API_KEY}}
|
37
|
+
run: |
|
38
|
+
gem install gem-release
|
39
|
+
envsubst << 'EOF' > ~/.gem/credentials
|
40
|
+
---
|
41
|
+
:rubygems_api_key: ${RUBYGEMS_API_KEY}
|
42
|
+
EOF
|
43
|
+
chmod 0600 ~/.gem/credentials
|
44
|
+
gem release
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
+
# See https://github.com/metanorma/cimas
|
3
|
+
name: rake
|
4
|
+
|
5
|
+
on:
|
6
|
+
push:
|
7
|
+
branches: [ master, main ]
|
8
|
+
tags: [ v* ]
|
9
|
+
pull_request:
|
10
|
+
|
11
|
+
jobs:
|
12
|
+
rake:
|
13
|
+
name: Test on Ruby ${{ matrix.ruby }} ${{ matrix.os }}
|
14
|
+
runs-on: ${{ matrix.os }}
|
15
|
+
continue-on-error: ${{ matrix.experimental }}
|
16
|
+
strategy:
|
17
|
+
fail-fast: false
|
18
|
+
matrix:
|
19
|
+
ruby: [ '3.0', '2.7', '2.6', '2.5' ]
|
20
|
+
os: [ ubuntu-latest, windows-latest, macos-latest ]
|
21
|
+
experimental: [ false ]
|
22
|
+
steps:
|
23
|
+
- uses: actions/checkout@v2
|
24
|
+
with:
|
25
|
+
submodules: true
|
26
|
+
|
27
|
+
- uses: ruby/setup-ruby@v1
|
28
|
+
with:
|
29
|
+
ruby-version: ${{ matrix.ruby }}
|
30
|
+
bundler-cache: true
|
31
|
+
|
32
|
+
- run: bundle exec rake
|
33
|
+
|
34
|
+
tests-passed:
|
35
|
+
needs: rake
|
36
|
+
runs-on: ubuntu-latest
|
37
|
+
steps:
|
38
|
+
- uses: peter-evans/repository-dispatch@v1
|
39
|
+
with:
|
40
|
+
token: ${{ secrets.METANORMA_CI_PAT_TOKEN || secrets.GITHUB_TOKEN }}
|
41
|
+
repository: ${{ github.repository }}
|
42
|
+
event-type: tests-passed
|
43
|
+
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
|
data/.gitignore
ADDED
data/.hound.yml
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
+
# See https://github.com/metanorma/cimas
|
3
|
+
inherit_from:
|
4
|
+
- https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
|
5
|
+
|
6
|
+
# local repo-specific modifications
|
7
|
+
# ...
|
8
|
+
|
9
|
+
AllCops:
|
10
|
+
TargetRubyVersion: 2.5
|
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
# Metanorma::Ietf::Data
|
2
|
+
|
3
|
+
Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/metanorma/ietf/data`. To experiment with that code, run `bin/console` for an interactive prompt.
|
4
|
+
|
5
|
+
TODO: Delete this and the text above, and describe your gem
|
6
|
+
|
7
|
+
## Installation
|
8
|
+
|
9
|
+
Add this line to your application's Gemfile:
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
gem 'metanorma-ietf-data'
|
13
|
+
```
|
14
|
+
|
15
|
+
And then execute:
|
16
|
+
|
17
|
+
$ bundle install
|
18
|
+
|
19
|
+
Or install it yourself as:
|
20
|
+
|
21
|
+
$ gem install metanorma-ietf-data
|
22
|
+
|
23
|
+
## Usage
|
24
|
+
|
25
|
+
TODO: Write usage instructions here
|
26
|
+
|
27
|
+
## Development
|
28
|
+
|
29
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
30
|
+
|
31
|
+
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
32
|
+
|
33
|
+
## Contributing
|
34
|
+
|
35
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/metanorma-ietf-data.
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require "bundler/setup"
|
5
|
+
require "metanorma/ietf/data"
|
6
|
+
|
7
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
8
|
+
# with your gem easier. You can also use a different console, if you like.
|
9
|
+
|
10
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
11
|
+
# require "pry"
|
12
|
+
# Pry.start
|
13
|
+
|
14
|
+
require "irb"
|
15
|
+
IRB.start(__FILE__)
|
data/bin/setup
ADDED
data/bin/wg2json.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require "json"
|
5
|
+
require "open-uri"
|
6
|
+
require "openssl"
|
7
|
+
|
8
|
+
def workgroup_ietf
|
9
|
+
result = []
|
10
|
+
URI.open("https://tools.ietf.org/wg/") do |f|
|
11
|
+
f.each_line do |l|
|
12
|
+
l.scan(%r{<td width="50%" style='padding: 0 1ex'>([^<]+)</td>}) do |w|
|
13
|
+
result << w[0].gsub(/\s+$/, "").gsub(/ Working Group$/, "")
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
result
|
18
|
+
end
|
19
|
+
|
20
|
+
def workgroup_irtf
|
21
|
+
result = []
|
22
|
+
URI.open("https://irtf.org/groups", ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE) do |f| # rubocop:disable Layout/LineLength
|
23
|
+
f.each_line do |l|
|
24
|
+
l.scan(%r{<a title="([^"]+) Research Group"[^>]+>([^<]+)<}) do |w|
|
25
|
+
result << w[0].gsub(/\s+$/, "")
|
26
|
+
result << w[1].gsub(/\s+$/, "") # abbrev
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
result
|
31
|
+
end
|
32
|
+
|
33
|
+
print [workgroup_ietf, workgroup_irtf].flatten.to_json
|
@@ -0,0 +1 @@
|
|
1
|
+
["Automatic SIP trunking And Peering","A Semantic Definition Format for Data and Interactions of Things","Audio/Video Transport Core Maintenance","Calendaring Extensions","Concise Binary Object Representation Maintenance and Extensions","Content Delivery Networks Interconnection","Codec Encoding for LossLess Archiving and Realtime transmission","Constrained RESTful Environments","Dispatch","Domain-based Message Authentication, Reporting & Conformance","Emergency Context Resolution with Internet Technologies","Revision of core Email specifications","Email mailstore and eXtensions To Revise or Amend","Building Blocks for HTTP APIs","HTTP","JSON Mail Access Protocol","JSON Path","Multiparty Multimedia Session Control","Privacy Enhanced RTP Conferencing","Registration Protocols Extensions","Real-Time Communication in WEB-browsers","Relay User Machine","Serialising Extended Data About Times and Events","Secure Media Frames","Session Initiation Protocol Core","Secure Telephone Identity Revisited","Using TLS in Applications","WebTransport","WebRTC Ingest Signaling over HTTPS","Web Packaging","General Area Dispatch","Stay Home Meet Only Online","IPv6 over Networks of Resource-constrained Nodes","IPv6 Maintenance","IPv6 over the TSCH mode of IEEE 802.15.4e","Adaptive DNS Discovery","Dynamic Host Configuration","Distributed Mobility Management","Extensions for Scalable DNS Service Discovery","DNS PRIVate Exchange","Drone Remote ID Protocol","Host Identity Protocol","Home Networking","Internet Area","IP Wireless Access in Vehicular Environments","IPv6 over Low Power Wide-Area Networks","Light-Weight Implementation Guidance","Network Time Protocol","Timing over IP Connection and Transfer of Clock","Autonomic Networking Integrated Model and Approach","Benchmarking Methodology","Diameter Maintenance and Extensions","Domain Name System Operations","Global Routing Operations","IOT Operations","MBONE Deployment","Media OPerationS","Network Configuration","Network Modeling","Operations and Management Area","Operational Security Capabilities for IP Network Infrastructure","RADIUS EXTensions","SIDR Operations","IPv6 Operations","Babel routing protocol","BGP Enabled ServiceS","Bidirectional Forwarding Detection","Bit Indexed Explicit Replication","Common Control and Measurement Plane","Deterministic Networking","Inter-Domain Routing","Locator/ID Separation Protocol","Link State Routing","Link State Vector Routing","Mobile Ad-hoc Networks","Multiprotocol Label Switching","Network Virtualization Overlays","Pseudowire And LDP-enabled Services","Path Computation Element","Protocols for IP Multicast","Reliable and Available Wireless","Routing In Fat Trees","Routing Over Low power and Lossy networks","Routing Area","Service Function Chaining","Source Packet Routing in Networking","Traffic Engineering Architecture and Signaling","Authentication and Authorization for Constrained Environments","Automated Certificate Management Environment","CBOR Object Signing and Encryption","CURves, Deprecating and a Little more Encryption","DDoS Open Threat Signaling","EAP Method Update","Grant Negotiation and Authorization Protocol","Interface to Network Security Functions","IP Security Maintenance and Extensions","Common Authentication Technology Next Generation","Lightweight Authenticated Key Exchange","Limited Additional Mechanisms for PKIX and SMIME","Messaging Layer Security","Web Authorization Protocol","Open Specification for Pretty Good Privacy","Privacy Pass","Remote ATtestation ProcedureS","Security Automation and Continuous Monitoring","Security Dispatch","Security Events","Software Updates for Internet of Things","Trusted Execution Environment Provisioning","Transport Layer Security","Public Notary Transparency","Application-Layer Traffic Optimization","Delay/Disruption Tolerant Networking","IP Performance Measurement","Multiplexed Application Substrate over QUIC Encryption","Network File System Version 4","QUIC","RTP Media Congestion Avoidance Techniques","Transport Services","TCP Maintenance and Minor Extensions","TURN Revised and Modernized","Transport Area","Transport Area","Crypto Forum","CFRG","Computation in the Network","COINRG","Decentralized Internet Infrastructure","DINRG","Global Access to the Internet for All","GAIA","Human Rights Protocol Considerations","HRPC","Internet Congestion Control","ICCRG","Information-Centric Networking","ICNRG","Measurement and Analysis for Protocols","MAPRG","Network Management","NMRG","NetWork Coding for Efficient Network Communications","NWCRG","Path Aware Networking","PANRG","Privacy Enhancements and Assessments","PEARG","Quantum Internet","QIRG","Thing-to-Thing","T2TRG"]
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "lib/metanorma/ietf/data/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |spec|
|
6
|
+
spec.name = "metanorma-ietf-data"
|
7
|
+
spec.version = Metanorma::Ietf::Data::VERSION
|
8
|
+
spec.authors = ["Ribose Inc."]
|
9
|
+
spec.email = ["open.source@ribose.com"]
|
10
|
+
|
11
|
+
spec.summary = <<~SUMMARY
|
12
|
+
metanorma-ietf-data contains IETF working and IRTF research groups
|
13
|
+
SUMMARY
|
14
|
+
spec.description = <<~DESCRIPTION
|
15
|
+
this make sens because https://tools.ietf.org/wg/
|
16
|
+
and https://irtf.org/groups often unavailable
|
17
|
+
DESCRIPTION
|
18
|
+
spec.homepage = "https://github.com/metanorma/metanorma-ietf"
|
19
|
+
spec.license = "BSD-2-Clause"
|
20
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
|
21
|
+
|
22
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
23
|
+
`git ls-files -z`.split("\x0").reject do |f|
|
24
|
+
f.match(%r{\A(?:test|spec|features)/})
|
25
|
+
end
|
26
|
+
end
|
27
|
+
spec.bindir = "exe"
|
28
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
29
|
+
spec.require_paths = ["lib"]
|
30
|
+
end
|
metadata
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: metanorma-ietf-data
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Ribose Inc.
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2021-07-26 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: |
|
14
|
+
this make sens because https://tools.ietf.org/wg/
|
15
|
+
and https://irtf.org/groups often unavailable
|
16
|
+
email:
|
17
|
+
- open.source@ribose.com
|
18
|
+
executables: []
|
19
|
+
extensions: []
|
20
|
+
extra_rdoc_files: []
|
21
|
+
files:
|
22
|
+
- ".github/workflows/check_update.yml"
|
23
|
+
- ".github/workflows/rake.yml"
|
24
|
+
- ".gitignore"
|
25
|
+
- ".hound.yml"
|
26
|
+
- ".rubocop.yml"
|
27
|
+
- Gemfile
|
28
|
+
- README.md
|
29
|
+
- Rakefile
|
30
|
+
- bin/console
|
31
|
+
- bin/setup
|
32
|
+
- bin/wg2json.rb
|
33
|
+
- lib/metanorma/ietf/data/version.rb
|
34
|
+
- lib/metanorma/ietf/data/workgroup.json
|
35
|
+
- metanorma-ietf-data.gemspec
|
36
|
+
homepage: https://github.com/metanorma/metanorma-ietf
|
37
|
+
licenses:
|
38
|
+
- BSD-2-Clause
|
39
|
+
metadata: {}
|
40
|
+
post_install_message:
|
41
|
+
rdoc_options: []
|
42
|
+
require_paths:
|
43
|
+
- lib
|
44
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - ">="
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 2.5.0
|
49
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
requirements: []
|
55
|
+
rubygems_version: 3.0.3
|
56
|
+
signing_key:
|
57
|
+
specification_version: 4
|
58
|
+
summary: metanorma-ietf-data contains IETF working and IRTF research groups
|
59
|
+
test_files: []
|