Adding a new spec for autopublishing
Autopublishing means that, when the Bikeshed source of a CSS module is updated, not only is a new Editors Draft generated, but also a new Technical Report publication (Working Draft, Candidate Recommendation Draft, or Note).
Control .yml files
Specifications whose editors have opted in to autopublishing
are listed in the workflows directory.
Each spec has a .yml file.
For example, if CSS Foo Level 2 is autopublishable,
there will be a css-foo-2.yml file in that directory.
Because the syntax is verbose and repetitive, these files are autogenerated by script.
The generator script
The script to generate .yml files
is called generate-auto-publish-workflows.py
and lives in the .github directory.
It is written in Python 3.
It includes the contents of auto-publish-template.yml which should be the same for all specifications.
To add a new spec:
- First, ask a chair or team contact to:
- make a token by telling them the name of your spec
- add it to the CSSWG repo as a Secret named like
TR_TOKEN_CSS_FOO_2
Once this is done:
- Navigate to
.githubin your checked-out copy of the CSSWG repo - Open
generate-auto-publish-workflows.pyin your text editor - Near the start of that file is a line starting
SPECS = [ - Add your new spec to that list (ideally in alphabetical order, to ease maintenence) and save
For example, add
{
"shortname": "css-foo-2",
"publicationStatus": "WD",
},
Take care there is a comma between each line and between each { .. } pair.
- Run the script:
python generate-auto-publish-workflows.py - Commit your changes (the updated python file and the new
.ymlfile)
It is recommended to test out the new workflow: make a small edit to your specification and push the change.