Skip to content

Commit

Permalink
Setup repository for draft-ssmith-keri using https://github.com/marti…
Browse files Browse the repository at this point in the history
  • Loading branch information
m00sey committed Jul 27, 2023
1 parent f15946d commit b8476ef
Show file tree
Hide file tree
Showing 13 changed files with 386 additions and 0 deletions.
101 changes: 101 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
version: 2
jobs:
build:
docker:
- image: martinthomson/i-d-template:latest
resource_class: small
working_directory: ~/draft

steps:
- run:
name: "Print Configuration"
command: |
xml2rfc --version
gem list -q kramdown-rfc
echo -n 'mmark '; mmark --version
- restore_cache:
name: "Restoring cache - Git"
keys:
- v2-cache-git-{{ .Branch }}-{{ .Revision }}
- v2-cache-git-{{ .Branch }}
- v2-cache-git-

- restore_cache:
name: "Restoring cache - References"
keys:
- v1-cache-references-{{ epoch }}
- v1-cache-references-

# Workaround for https://discuss.circleci.com/t/22437
- run:
name: Tag Checkout
command: |
if [ -n "$CIRCLE_TAG" ] && [ -d .git ]; then
remote=$(echo "$CIRCLE_REPOSITORY_URL" | \
sed -e 's,/^git.github.com:,https://github.com/,')
git fetch -f "$remote" "refs/tags/$CIRCLE_TAG:refs/tags/$CIRCLE_TAG" || \
(echo 'Removing .git cache for tag build'; rm -rf .git)
fi
- checkout

# Build txt and html versions of drafts
- run:
name: "Build Drafts"
command: make

# Update editor's copy on gh-pages
- run:
name: "Update GitHub Pages"
command: |
if [ "${CIRCLE_TAG#draft-}" == "$CIRCLE_TAG" ]; then
make gh-pages
fi
# For tagged builds, upload to the datatracker.
- deploy:
name: "Upload to Datatracker"
command: |
if [ "${CIRCLE_TAG#draft-}" != "$CIRCLE_TAG" ]; then
make upload
fi
# Archive GitHub Issues
- run:
name: "Archive GitHub Issues"
command: "make archive || make archive DISABLE_ARCHIVE_FETCH=true && make gh-archive"

# Create and store artifacts
- run:
name: "Create Artifacts"
command: "make artifacts CI_ARTIFACTS=/tmp/artifacts"

- store_artifacts:
path: /tmp/artifacts

- run:
name: "Prepare for Caching"
command: "git reflog expire --expire=now --all && git gc --prune=now"

- save_cache:
name: "Saving Cache - Git"
key: v2-cache-git-{{ .Branch }}-{{ .Revision }}
paths:
- ~/draft/.git

- save_cache:
name: "Saving Cache - Drafts"
key: v1-cache-references-{{ epoch }}
paths:
- ~/.cache/xml2rfc


workflows:
version: 2
build:
jobs:
- build:
filters:
tags:
only: /.*?/
8 changes: 8 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# See http://editorconfig.org

root = true

[*.{md,xml,org}]
charset = utf-8
insert_final_newline = true
trim_trailing_whitespace = true
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Automatically generated CODEOWNERS
# Regenerate with `make update-codeowners`
draft-ssmith-keri.md [email protected]
42 changes: 42 additions & 0 deletions .github/workflows/archive.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: "Archive Issues and Pull Requests"

on:
schedule:
- cron: '0 0 * * 0,2,4'
repository_dispatch:
types: [archive]
workflow_dispatch:
inputs:
archive_full:
description: 'Recreate the archive from scratch'
default: false
type: boolean

jobs:
build:
name: "Archive Issues and Pull Requests"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v2

# Note: No caching for this build!

- name: "Update Archive"
uses: martinthomson/i-d-template@v1
env:
ARCHIVE_FULL: ${{ inputs.archive_full }}
with:
make: archive
token: ${{ github.token }}

- name: "Update GitHub Pages"
uses: martinthomson/i-d-template@v1
with:
make: gh-archive
token: ${{ github.token }}

- name: "Save Archive"
uses: actions/upload-artifact@v3
with:
path: archive.json
58 changes: 58 additions & 0 deletions .github/workflows/ghpages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Update Editor's Copy"

on:
push:
paths-ignore:
- README.md
- CONTRIBUTING.md
- LICENSE.md
- .gitignore
pull_request:
paths-ignore:
- README.md
- CONTRIBUTING.md
- LICENSE.md
- .gitignore

jobs:
build:
name: "Update Editor's Copy"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Setup"
id: setup
run: date -u "+date=%FT%T" >>"$GITHUB_OUTPUT"

- name: "Caching"
uses: actions/cache@v3
with:
path: |
.refcache
.venv
.gems
node_modules
.targets.mk
key: i-d-${{ steps.setup.outputs.date }}
restore-keys: i-d-

- name: "Build Drafts"
uses: martinthomson/i-d-template@v1
with:
token: ${{ github.token }}

- name: "Update GitHub Pages"
uses: martinthomson/i-d-template@v1
if: ${{ github.event_name == 'push' }}
with:
make: gh-pages
token: ${{ github.token }}

- name: "Archive Built Drafts"
uses: actions/upload-artifact@v3
with:
path: |
draft-*.html
draft-*.txt
49 changes: 49 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: "Publish New Draft Version"

on:
push:
tags:
- "draft-*"

jobs:
build:
name: "Publish New Draft Version"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v3

# See https://github.com/actions/checkout/issues/290
- name: "Get Tag Annotations"
run: git fetch -f origin ${{ github.ref }}:${{ github.ref }}

- name: "Setup"
id: setup
run: date -u "+date=%FT%T" >>"$GITHUB_OUTPUT"

- name: "Caching"
uses: actions/cache@v3
with:
path: |
.refcache
.venv
.gems
node_modules
.targets.mk
key: i-d-${{ steps.setup.outputs.date }}
restore-keys: i-d-

- name: "Build Drafts"
uses: martinthomson/i-d-template@v1
with:
token: ${{ github.token }}

- name: "Upload to Datatracker"
uses: martinthomson/i-d-template@v1
with:
make: upload

- name: "Archive Submitted Drafts"
uses: actions/upload-artifact@v3
with:
path: "versioned/draft-*-[0-9][0-9].*"
36 changes: 36 additions & 0 deletions .github/workflows/update.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: "Update Generated Files"
# This rule is not run automatically.
# It can be run manually to update all of the files that are part
# of the template, specifically:
# - README.md
# - CONTRIBUTING.md
# - .note.xml
# - .github/CODEOWNERS
# - Makefile
#
#
# This might be useful if you have:
# - added, removed, or renamed drafts (including after adoption)
# - added, removed, or changed draft editors
# - changed the title of drafts
#
# Note that this removes any customizations you have made to
# the affected files.
on: workflow_dispatch

jobs:
build:
name: "Update Files"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v2

- name: "Update Generated Files"
uses: martinthomson/i-d-template@v1
with:
make: update-files
token: ${{ github.token }}

- name: "Push Update"
run: git push
23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
*~
/*-[0-9][0-9].xml
archive.json
draft-ssmith-keri.xml
Gemfile.lock
/.gems/
*.html
/lib
/node_modules/
package-lock.json
*.pdf
*.redxml
/.refcache
report.xml
*.swp
.tags
/.targets.mk
*.txt
*.upload
/.venv/
/versioned/
/.vscode/
!requirements.txt
4 changes: 4 additions & 0 deletions .note.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<note title="Discussion Venues" removeInRFC="true">
<t>Source for this draft and an issue tracker can be found at
<eref target="https://github.com/trustoverip/tswg-keri-specification"/>.</t>
</note>
17 changes: 17 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Contributing

This repository relates to activities in the Internet Engineering Task Force
([IETF](https://www.ietf.org/)). All material in this repository is considered
Contributions to the IETF Standards Process, as defined in the intellectual
property policies of IETF currently designated as
[BCP 78](https://www.rfc-editor.org/info/bcp78),
[BCP 79](https://www.rfc-editor.org/info/bcp79) and the
[IETF Trust Legal Provisions (TLP) Relating to IETF Documents](http://trustee.ietf.org/trust-legal-provisions.html).

Any edit, commit, pull request, issue, comment or other change made to this
repository constitutes Contributions to the IETF Standards Process
(https://www.ietf.org/).

You agree to comply with all applicable IETF policies and procedures, including,
BCP 78, 79, the TLP, and the TLP rules regarding code components (e.g. being
subject to a Simplified BSD License) in Contributions.
4 changes: 4 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# License

See the
[guidelines for contributions](https://github.com/trustoverip/tswg-keri-specification/blob/main/CONTRIBUTING.md).
11 changes: 11 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
LIBDIR := lib
include $(LIBDIR)/main.mk

$(LIBDIR)/main.mk:
ifneq (,$(shell grep "path *= *$(LIBDIR)" .gitmodules 2>/dev/null))
git submodule sync
git submodule update $(CLONE_ARGS) --init
else
git clone -q --depth 10 $(CLONE_ARGS) \
-b main https://github.com/martinthomson/i-d-template $(LIBDIR)
endif
30 changes: 30 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Key Event Receipt Infrastructure (KERI)

This is the working area for the individual Internet-Draft, "Key Event Receipt Infrastructure (KERI)".

* [Editor's Copy](https://trustoverip.github.io/tswg-keri-specification/#go.draft-ssmith-keri.html)
* [Datatracker Page](https://datatracker.ietf.org/doc/draft-ssmith-keri)
* [Individual Draft](https://datatracker.ietf.org/doc/html/draft-ssmith-keri)
* [Compare Editor's Copy to Individual Draft](https://trustoverip.github.io/tswg-keri-specification/#go.draft-ssmith-keri.diff)


## Contributing

See the
[guidelines for contributions](https://github.com/trustoverip/tswg-keri-specification/blob/main/CONTRIBUTING.md).

Contributions can be made by creating pull requests.
The GitHub interface supports creating pull requests using the Edit (✏) button.


## Command Line Usage

Formatted text and HTML versions of the draft can be built using `make`.

```sh
$ make
```

Command line usage requires that you have the necessary software installed. See
[the instructions](https://github.com/martinthomson/i-d-template/blob/main/doc/SETUP.md).

0 comments on commit b8476ef

Please sign in to comment.