diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index d751aef5..00000000 --- a/Jenkinsfile +++ /dev/null @@ -1,126 +0,0 @@ -pipeline { - agent none - environment { - DOCKER_REPO = "boerderij/varken" - GIT_REPO = 'Boerderij/Varken' - VERSION_FILE = "varken/__init__.py" - FLAKE_FILES = "Varken.py varken/*.py" - TAG = "" - GIT_TOKEN = credentials('github-jenkins-token') - } - stages { - stage('Flake8') { - agent { label 'amd64'} - steps { - sh """ - python3 -m venv venv && venv/bin/pip install flake8 && venv/bin/python -m flake8 --max-line-length 120 ${FLAKE_FILES} - rm -rf venv/ - """ - script { - TAG = sh(returnStdout: true, script: 'grep -i version ${VERSION_FILE} | cut -d" " -f3 | tr -d \\"').trim() - } - } - } - stage('Docker Builds') { - parallel { - stage('amd64') { - when { - anyOf { - branch 'master' - branch 'develop' - } - } - agent { label 'amd64'} - steps { - script { - if (BRANCH_NAME == 'master') { - def image = docker.build("${DOCKER_REPO}:${TAG}-amd64") - image.push() - - } else if (BRANCH_NAME == 'develop') { - def image = docker.build("${DOCKER_REPO}:develop-amd64") - image.push() - } - } - } - } - stage('ARMv6') { - when { - anyOf { - branch 'master' - branch 'develop' - } - } - agent { label 'arm64'} - steps { - script { - if (BRANCH_NAME == 'master') { - def image = docker.build("${DOCKER_REPO}:${TAG}-arm", "-f Dockerfile.arm .") - image.push() - } else if (BRANCH_NAME == 'develop') { - def image = docker.build("${DOCKER_REPO}:develop-arm", "-f Dockerfile.arm .") - image.push() - } - } - } - } - stage('ARM64v8') { - when { - anyOf { - branch 'master' - branch 'develop' - } - } - agent { label 'arm64'} - steps { - script { - if (BRANCH_NAME == 'master') { - def image = docker.build("${DOCKER_REPO}:${TAG}-arm64", "-f Dockerfile.arm64 .") - image.push() - } else if (BRANCH_NAME == 'develop') { - def image = docker.build("${DOCKER_REPO}:develop-arm64", "-f Dockerfile.arm64 .") - image.push() - } - } - } - } - } - } - stage('Docker Manifest Build') { - when { - anyOf { - branch 'master' - branch 'develop' - } - } - agent { label 'amd64'} - steps { - script { - if (BRANCH_NAME == 'master') { - sh(script: "docker manifest create ${DOCKER_REPO}:${TAG} ${DOCKER_REPO}:${TAG}-amd64 ${DOCKER_REPO}:${TAG}-arm64 ${DOCKER_REPO}:${TAG}-arm") - sh(script: "docker manifest inspect ${DOCKER_REPO}:${TAG}") - sh(script: "docker manifest push -p ${DOCKER_REPO}:${TAG}") - sh(script: "docker manifest create ${DOCKER_REPO}:latest ${DOCKER_REPO}:${TAG}-amd64 ${DOCKER_REPO}:${TAG}-arm64 ${DOCKER_REPO}:${TAG}-arm") - sh(script: "docker manifest inspect ${DOCKER_REPO}:latest") - sh(script: "docker manifest push -p ${DOCKER_REPO}:latest") - } else if (BRANCH_NAME == 'develop') { - sh(script: "docker manifest create ${DOCKER_REPO}:develop ${DOCKER_REPO}:develop-amd64 ${DOCKER_REPO}:develop-arm64 ${DOCKER_REPO}:develop-arm") - sh(script: "docker manifest inspect ${DOCKER_REPO}:develop") - sh(script: "docker manifest push -p ${DOCKER_REPO}:develop") - } - } - } - } - stage('GitHub Release') { - when { branch 'master' } - agent { label 'amd64'} - steps { - sh """ - git remote set-url origin "https://${GIT_TOKEN_USR}:${GIT_TOKEN_PSW}@github.com/${GIT_REPO}.git" - git tag ${TAG} - git push --tags - """ - } - } - } -} diff --git a/varken/iniparser.py b/varken/iniparser.py index ed32c088..594c9c39 100644 --- a/varken/iniparser.py +++ b/varken/iniparser.py @@ -1,3 +1,4 @@ +from os import W_OK, access from shutil import copyfile from os import environ as env from logging import getLogger @@ -77,6 +78,9 @@ def write_file(self, inifile): file_path = join(self.data_folder, ini) if exists(file_path): self.logger.debug('Writing to %s', inifile) + if not access(file_path, W_OK): + self.logger.error("Config file is incomplete and read-only. Exiting.") + exit(1) with open(file_path, 'w') as config_ini: self.config.write(config_ini) else: