-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: Add Infrastructure Guide #106
Draft
ethanrd
wants to merge
6
commits into
cf-convention:main
Choose a base branch
from
ethanrd:add-infrastructure-guide
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
f1a17a3
Add Infrastructure Guide
ethanrd e75818f
Copyedit
erget a4b63ad
Add section on CF Standard Names to infrastructure guide.
ethanrd cdd5659
Update infrastructure-guide.md
cofinoa b5e57a7
Update infrastructure-guide.md
cofinoa 1583c73
Update infrastructure-guide.md
cofinoa File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
# Infrastructure Guide | ||
|
||
This guide serves as an advanced version of the contributing documentation | ||
and contains the information on how we manage the infrastructure | ||
behind the CF Website, Conventions document, CF Standard Names table, | ||
and standardized region list. | ||
|
||
## CF Website | ||
|
||
The [CF Website](https://cfconventions.org) is served by [GitHub Pages](https://pages.github.com/) as static site generated by [Jekyll](https://jekyllrb.com/), and rendered from source files in [Markdown](https://github.github.com/gfm/) (mainly) on the `main` branch | ||
of the [CF Website repo](https://github.com/cf-convention/cf-convention.github.io). | ||
|
||
The CF Website site pages are regenerated automatically by [GitHub Action](https://docs.github.com/en/actions) whenever a commit is made to the `main` branch. | ||
|
||
### PR Testing for the CF Website | ||
|
||
PRs to the CF website repo are built/tested by GitHub Actions | ||
using Jekyll with the 'github-pages' plugin. | ||
The resulting website content is available as an artifact | ||
from the CF Website repo's GitHub Actions [page](https://github.com/cf-convention/cf-convention.github.io/actions) | ||
for the build of that PR. | ||
|
||
Configuration files are: | ||
- [`check_jekyll_build.yml`](https://github.com/cf-convention/cf-convention.github.io/blob/main/.github/workflows/check_jekyll_build.yml) | ||
- [`Gemfile`](https://github.com/cf-convention/cf-convention.github.io/blob/main/Gemfile) | ||
- [`_config.yml`](https://github.com/cf-convention/cf-convention.github.io/blob/main/_config.yml) | ||
|
||
## CF Conventions Document | ||
The CF Conventions Document is built from source documents (in AsciiDoc) | ||
on the `main` branch of the [CF Conventions repo](https://github.com/cf-convention/cf-conventions). | ||
|
||
### Draft Version - Including all Accepted Proposals | ||
For each commit to the `main` branch of the CF Conventions repo, | ||
a GitHub Workflow builds the CF Conventions document(s) | ||
using [Asciidoctor](https://asciidoctor.org/). | ||
|
||
The resulting HTML page and PDF document are pushed to the `gh-pages` branch | ||
and are served by GitHub Pages at http://cfconventions.org/cf-conventions . | ||
As only accepted proposals and fixes are pushed to `main`, the resulting documents | ||
are the draft version for the next release. | ||
|
||
### Release Versions | ||
??? Also done with Travis? Need to confirm this. | ||
??? This also done in the same GitHub action as the Draft version, but special conditions are met when the event it's a `release` | ||
|
||
Resulting HTML page and PDF document are pushed to the CF Website Repo | ||
at `/Data/cf-conventions/cf-convention-<version>` | ||
from where they are published to the website | ||
and available at | ||
http://cfconventions.org/Data/cf-conventions/cf-conventions-<version>/cf-conventions.[html|pdf] | ||
|
||
GitHub Releases are made ... | ||
?? Should HTML and PDF output be included as assets in GitHub release? | ||
|
||
### PR Testing for the CF Conventions Document | ||
PRs to the CF Convention repo are built/tested by GitHub Actions | ||
using Asciidoctor. The resulting HTML page and PDF document are available | ||
as artifacts in each build on the CF Conventions repo GitHub Actions [page](https://github.com/cf-convention/cf-conventions/actions). | ||
|
||
The configuration file for this GitHub Action is: | ||
- [`check_adoc_build.yml`](https://github.com/cf-convention/cf-conventions/blob/main/.github/workflows/check_adoc_build.yml) | ||
|
||
## CF Standard Names Table | ||
New CF Standard Names are proposed and discussed in issues on the | ||
[CF Discussion repo][cf-discuss]. | ||
Discussion of current and past proposed CF Standard Names, | ||
including if and when they are accepted and ready for publication, | ||
are tracked in the [CEDA CF Vocabulary Editor](http://cfeditor.ceda.ac.uk/proposals/1). | ||
|
||
When a new version of the CF Standard Names table is ready for release, | ||
the CF Vocabulary Editor system is used to produces an XML file | ||
that conforms to the schema used for the standard name table | ||
(see Appendix B of the CF conventions). | ||
An XSLT script is then used to render the XML into an HTML version of the Standard Names table. | ||
Another process is run (see [below for details](#kwic-index)) to generate the HTML that is | ||
the KWIC Index version of the Standard Names table. | ||
The XML and HTML files are pushed to the [GitHub Website repo](https://github.com/cf-convention/cf-convention.github.io) | ||
in `Data/cf-standard-name/<version>/[build|src]` so they are published (as described above) to the CF website. | ||
|
||
The CF Standard Names process is managed and led by @japamment and @feggleton. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. and @efisher008 |
||
For questions, please uses issues on the [CF Discussion repo][cf-discuss]. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. another change to Vocab repo or GitHub Discussions. |
||
|
||
### Publishing to NERC Vocabulary Server | ||
The [CF Standard Names vocabulary](http://vocab.nerc.ac.uk/collection/P07/current/) | ||
on the [NERC Vocabulary Server (NVS)](http://vocab.nerc.ac.uk/) | ||
is updated at the same time the CF Standard Names table is updated on the CF website. | ||
|
||
For each CF Standard Names table release, the CEDA Vocabulary Editor | ||
also produces a tab separated file suitable for uploading to the NVS. | ||
The NVS runs the new CF Standard Name table through some checking scripts | ||
and then publishes them overnight (many thanks are due to our BODC colleagues, | ||
especially Gwen Moncoiffe and Alexandra Kokkinaki for this part of the process). | ||
|
||
### KWIC Index | ||
|
||
The KWIC Index version of standard names is produced by first running a Unix shell script | ||
to do some simple text editing on the XML file, | ||
then feeding the result into a Prolog program | ||
contributed by Robert Meutzelfeldt from the University of Edinburgh. | ||
(This is done manually and is not part of the CEDA vocab editor). | ||
The process generates the KWIC Index as an HTML file. | ||
|
||
## CF Standardized Region List | ||
|
||
?? | ||
|
||
[cf-discuss]: https://github.com/cf-convention/discuss |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs changing since vocabularies repo was introduced