KVAKK Git Tools¶
Repo for sharing recommended git config and git scripts in Statistics Norway.
This repo should cover git config files for the production zone, Linux and Windows (Citrix and VDI), JupyterLab (Dapla and production zone), administrative zone and stand alone.
Initially the repo will contain a collection of git configurations for the different environments. But the aim is to make a common script, setting up the recommended git config for all SSB platforms, based on the detected environment.
Status¶
The ssb_gitconfig.py script works and is tested on the following platforms:
Dapla
Production zone, Linux (including Jupyter)
Production zone, Windows (Citrix)
Directories¶
The existing directory contains configurations collected from existing environments
before any recommendations are implemented. The recommended directory contains the
recommended config files for the different environments.
The ssb_gitconfig directory is the root directory for the script that should
set the ssb recommended git config based on the detected environment. It is a
work in progress and not finished yet.
Usage¶
Linux and Mac OS:
git clone https://github.com/statisticsnorway/kvakk-git-tools.git
kvakk-git-tools/kvakk_git_tools/ssb_gitconfig.py
Windows:
git clone https://github.com/statisticsnorway/kvakk-git-tools.git
python kvakk-git-tools\kvakk_git_tools\ssb_gitconfig.py
Developer guide¶
Initial setup¶
The Poetry tool is used for dependency management. Install poetry as described on the Poetry installation page, if not already installed. Then run the following commands in the cloned repo:
poetry install
poetry run pre-commit install
Source code requirements¶
The source code must support python version 3.6, because one of the supported platforms is based on RHEL 7.
It shall be possible to run the script from a plain python installation. That is: Don’t use external libraries.
The source code shall run on these platforms: Linux, Windows and macOS.
Linting¶
You can do local linting with the following commands:
poetry run ruff check .
Bumping version¶
Just change the version number in pyproject.toml to the new version number.
Or use the command poetry version followed by major, minor or patch.
Building and releasing¶
An automatic release process will build kvakk-git-tools and release a new version of the package to either pypi.org or test.pypi.org automatically, when merging to the main branch.
If the version number is not changed, it is published to TestPyPI. If the version number is changed, it is published to PyPI.
Credits¶
This project was generated from Statistics Norway’s SSB PyPI Template.