GoC Open Source Playbook
This playbook is designed to provide guidance, and answer frequently asked questions about contributing, publication and use of Open Source across the Government of Canada.
THIS DOCUMENT IS IN A VERY EARLY DRAFT STATE
Use & Contribution
This section is on use and contribution.
Contribution
The most commonly neglected area for Open Source projects is on Documentation. If a Team leverages existing Open Source projects, this can be considered a prime candidate for contribution back to the community, providing documentation in any areas that the Team required research or pitfalls they encountered.
Creation & Stewardship
Projects should be created in the Open by default, it is far less costly to develop in the open from the start then to open code you had previously closed off.
Repositories
The location of your repository has immense sway in the likelihood of your project actually being noticed and providing value back to the community. Use Major Code Repositories such as:
Security
Credentials and Secret Keys must not be stored in Source Code. The use of Environment Variables is strongly encouraged for those values.
Branching
To ensure consistency and the ability to recover from changes, a proper branching strategy such as Gitflow should be implemented.
Versioning
Semantic Versioning should be used.
License
In general, the MIT License should be applied to works created by Government of Canada Employees.
Contribution Guidelines
Provide Contribution Guidelines to help the OSS - Sample
Working in the Open
This section is on working in the Open.
FAQs
FAQs go here.
References
Internal Sources
- Open First Whitepaper : https://github.com/canada-ca/Open_First_Whitepaper
- Draft Open Source Policy : https://github.com/canada-ca/open-source-logiciel-libre
External Sources
- Open Source Guide : https://opensource.guide/