(Français)
https://code.open.canada.ca/en/index.html
Explore how the Government of Canada creates greater transparency, accountability, increases citizen engagement, and drives innovation and economic opportunities through open Standards, open source software, open data, open information, open dialogue and open Government.
See CONTRIBUTING.md
See data README file to learn how to contribute data about released open source code or open source software used by Canadian federal, provincial, territorial or municipal administration.
This site uses Jekyll and Github Pages.
Unless otherwise noted, the source code of this project is covered under Crown Copyright, Government of Canada, and is distributed under the MIT Licence.
To test your changes locally, run jekyll serve
. For example using Docker:
docker run -p 4000:4000 -v $(pwd):/srv/jekyll -it --rm jekyll/jekyll jekyll serve
Notes:
- For PowerShell users, replace the parentheses with brackets (Change
$(pwd)
to${pwd}
) - If Jekyll is not automatically regenerating the site after files are modified, add the build command flags:
--watch
and--force_polling
to the end of the above command
Site will be available at: http://localhost:4000/ore-ero/
If you're working on Javascript in the /assets/js/src
folder, make sure your code follows the style guidelines. We use ES Lint for checking code style. Ensure you have a recent version of Node.js (>=10.15.3). Run the following to install dependencies.
npm install
Now when you want to know if your code is following the guidelines, run
npm run lint
We use Prettier for code formatting. To automatically format your code, run
npm run prettify
YAML processing is done using the js-yaml library.
You can choose to run PRB0t locally using Docker if you like. First, you need to generate a personal access token.
- In your github account, navigate to settings/Developer settings/Personal access tokens
- Click Generate a new token, you only need to select the repo option
Note: the token allows the communication between this api and your github repo. It's the equivalent of logging in as the API to your github account.
Now run the following, replacing {YOUR GITHUB TOKEN}
with your own token.
docker run -p3000:3000 -e GH_TOKEN={YOUR GITHUB TOKEN} -e HOST_NAME=* jrewerts/prb0t:v1.0.1
Now change prbot_url in _config.yml
to http://localhost:3000/
.
Now when you fill out our forms, it'll submit the pull request using PRB0t running in your Docker container!
The core site is a GitHub Pages site, so it's updated whenever code is merged into master. We also depend on an external service called PRB0t to allow users to submit pull requests to ORE without having a GitHub account.
This service is hosted in Heroku. We currently use Heroku's git-based method of updating the application. To do this, you will need Git and the Heroku CLI installed.
First, clone PRB0t to your machine.
git clone https://github.com/PRB0t/PRB0t
Next, add our app as a remote git repository.
heroku git:remote -a canada-pr-bot
And finally, push your changes.
git push heroku master
https://code.ouvert.canada.ca/ore-ero/fr/index.html
Découvrez comment le gouvernement du Canada crée davantage de transparence et de responsabilisation, augmente la mobilisation citoyenne et favorise l’innovation et les possibilités économiques au moyen de normes ouvertes, logiciels libres, données ouvertes, d’information ouverte, de dialogue ouvert et du Gouvernement ouvert.
Voir CONTRIBUTING.md
Voir le fichier README des données pour savoir comment fournir des données sur le code source ouvert publié ou les logiciels libres utilisés par l'administration fédérale, provinciale, territoriale ou municipale du Canada.
Ce site utilise Jekyll et Github Pages.
Sauf indication contraire, le code source de ce projet est protégé par le droit d'auteur de la Couronne du gouvernement du Canada et distribué sous la licence MIT.
Pour tester vos modifications localement, exécuter jekyll serve
. Par exemple avec Docker:
docker run -p 4000:4000 -v $(pwd):/srv/jekyll -it --rm jekyll/jekyll jekyll serve
Remarques:
- Pour les utilisateurs de PowerShell, remplacez les parenthèses par des crochets (Modifiez
$(pwd)
en${pwd}
) - Si Jekyll ne régénère pas automatiquement le site une fois les fichiers modifiés, ajoutez les indicateurs:
--watch
et--force_polling
à la fin de la commande ci-dessus
Le site sera disponible au: http://localhost:4000/ore-ero/
Si vous travaillez sur Javascript dans le dossier /assets/js/src
, assurez-vous que votre code respecte les directives de style. Nous utilisons ES Lint pour vérifier le style de code. Assurez-vous de disposer d'une version récente de Node.js (>=10.15.3). Exécutez ce qui suit pour installer des dépendances.
npm install
Lorsque vous voulez savoir si votre code suit les directives de style, exécutez
npm run lint
Nous utilisons Prettier pour le formatage du code. Pour formater automatiquement votre code, exécutez
npm run prettify
Le traitement YAML est effectué à l'aide de la bibliothèque js-yaml.
Vous pouvez choisir d'exécuter PRB0t localement à l'aide de Docker si vous le souhaitez. Tout d'abord, vous devez générer un jeton d'accès personnel.
- Dans votre compte github, accédez à Paramètres / Paramètres du développeur / Jetons d'accès personnel.
- Cliquez sur Générer un nouveau jeton, il vous suffit de sélectionner l'option Repo.
Remarque: le jeton permet la communication entre cette api et votre dépôt Github. C'est l'équivalent de se connecter en tant qu'API à votre compte github.
Maintenant, lancez ce qui suit, en remplaçant "{YOUR GITHUB TOKEN}" par votre propre jeton.
docker run -p3000:3000 -e GH_TOKEN={YOUR GITHUB TOKEN} -e HOST_NAME=* jrewerts/prb0t:v1.0.1
Maintenant, remplacez prbot_url dans _config.yml
par http://localhost:3000/
.
Maintenant, lorsque vous remplissez nos formulaires, il soumet la demande de fusion à l'aide de PRB0t s'exécutant dans votre conteneur Docker!
Le site principal est un site GitHub Pages. Il est donc mis à jour chaque fois que le code est fusionné dans le fichier maître. Nous dépendons également d'un service externe appelé PRB0t pour permettre aux utilisateurs de soumettre des demandes de fusion à ORE sans avoir de compte GitHub.
Ce service est hébergé sur Heroku. Nous utilisons actuellement la méthode de mise à jour de l'application basée sur Git de Heroku. Pour ce faire, vous devez avoir installé Git et la CLI Heroku.
Commencez par cloner PRB0t sur votre machine.
git clone https://github.com/PRB0t/PRB0t
Ensuite, ajoutez notre application en tant que dépôt git distant.
heroku git:remote -a canada-pr-bot
Et enfin, poussez vos modifications.
git push heroku master