Go to file
Zhaofeng Li 6c83de09ae fix-infrastructure-objects: Don't assume /bin/bash to be present
Unlike /bin/sh, /bin/bash is not mandated by POSIX and is not
present on some platforms (e.g., NixOS). Use the bash in the
user's PATH.
2020-11-26 19:32:40 -08:00
data Merge pull request 'Add SPACE55-MNT' (#318) from space55-20201126/addme into master 2020-11-26 21:51:59 +00:00
utils/schema-check cleanup work 2020-07-23 13:00:01 -06:00
.drone.yml squashed commit: 2020-08-30 22:49:32 +01:00
.gitignore remove .rpsl/config in favor of schema/SCHEMA-SCHEMA 2020-06-26 10:04:57 -06:00
README.md Update 'README.md' 2020-08-29 09:51:53 +01:00
check-my-stuff s/realpath/readlink -f/g 2018-01-01 02:53:36 +01:00
check-pol check-pol: use a more compatible shebang 2019-05-08 22:23:33 +02:00
check-remote require fully expanded ipv6 2017-12-11 17:33:55 -07:00
fix-infrastructure-objects fix-infrastructure-objects: Don't assume /bin/bash to be present 2020-11-26 19:32:40 -08:00
fmt-my-stuff s/realpath/readlink -f/g 2018-01-01 02:53:36 +01:00
install-commit-hook s/realpath/readlink -f/g 2018-01-01 02:53:36 +01:00
squash-my-commits Update squash-my-commits script to support multiple git protocols 2020-09-01 20:52:46 +01:00

README.md

This repo is https://git.dn42.dev/dn42/registry
If you are using a different url, please update as soon as possible

Guide for creating a Pull Request

  1. Create a local clone of the registry repository
git clone git@git.dn42.dev:dn42/registry.git

You do not need to fork the registry repository. New users are provisioned as collaborators, allowing everyone permission to create new branches in the main registry repository. Note that this process can take up to 10 minutes after logging in as a new user.

  1. Create a branch for your changes

The name of the branch must follow a specific format: <username>-YYYYMMDD/<name>

  • <username> is your gitea username.
  • YYYYMMDD is the current date.
  • <name> is a descriptive name for your change.

The branch must be created in the registry on the date described in the branch name, so create the branch and push it to the registry immediately.

# create a new branch and switch to it

git checkout -b foo-20200704/mychange

# push it immediately to the registry

git push --set-upstream origin foo-20200704/mychange
  1. Make your changes on your new branch

See the getting started guide in the Wiki for more information.

  • inet6num must have a random prefix to satisfy RFC4193
  • Include an auth method in your MNTNER so you changes to your objects can be authenticated
  • Run the schema checking tools to validate your changes
    • ./fmt-my-stuff MNTNER-MNT
    • ./check-my-stuff MNTNER-MNT
    • ./check-pol origin/master MNTNER-MNT
$EDITOR mychanges
git add .
git commit
  1. Push your changes back to the registry

You must squash multiple commits together and sign them using your MNTNER authentication method.
It is also good practice to rebase your work on top of any other changes that may have happened on the master branch.

The registry contains a script that will automatically rebase and squash your commits:

./squash-my-commits
git push --force

or you can do it manually:

# make sure your local copy of the master is up to date

git fetch origin master

# ensure you are using your new branch

git checkout foo-20200704/mychange 

# rebase your branch on top of the master
#
# -i to interactively pick the commits
# -S to sign the result with your GPG key (not required for SSH authentication)
#
# In interactive mode, make sure the first commit says 'pick'
# change the rest from 'pick' to 'squash'
# save and close to create the commit

git rebase -i -S origin/master

# force push your changes back to the registry

git push --force
  1. Create a pull request

In the gitea GUI, select your branch, check your changes again for a final time and then hit the 'Pull Request' button.

If you are using SSH authentication, please post the full commit hash that you signed and SSH signature in to the PR comments.

Your changes will now go through automatic checking and then manual review by the registry maintainers.

  1. Making updates

If you need to make changes to fix review issues simply make the updates to your branch and follow the process in (4) to rebase, squash and sign your changes again. You must do this for every update.

Do not close and re-open a new pull request, any changes you make on your branch will be automatically updated in the PR. Creating a new PR loses all the history and makes tracking changes harder.

Gitea Usage

The DN42 registry is a community resource for your benefit. Registered users are free to create and use their own repositories and use the Drone CI tools, but please be considerate in your usage.

  • Repositories should be related to DN42
  • Do not create tools that make regular, automated, push changes to repositories unless agreed with the registry maintainers
  • Do not just create a mirror of other, publically available, repositories

Data Privacy

Gitea and the DN42 registry contains personal information for users who are registered in DN42; this information is stored in Canada and viewable by any registered member. In addition, anyone with access to the repository is able to make their own copies of the registry, which they may then process or transfer in arbitrary ways. You must assume that all data entered in to the registry cannot be kept private and will be made publically available.

Any personal information stored in the registry is optional and voluntarily provided by you. Whilst the registry maintainers will make best efforts to update or delete personal data, you must accept that the technical restrictions of git may make this impossible and that your information will likely have been distributed beyond the control of the registry maintainers.

If this is not acceptable for you, you must not upload your personal details to the registry.

All registered users have the capability to make copies of the registry data for their own use. If you do copy the registry you must ensure that any copies you make are deleted when no longer required and that you will make best efforts to update or delete personal data when requested.