Merge branch 'cicd' into 'main'

Tente un fixe pour la pipeline.

See merge request Thoscellen/Wallset!9
This commit is contained in:
Simon 2023-05-18 21:17:34 +00:00
commit e31f02cd38
7 changed files with 34 additions and 24 deletions

View File

@ -9,7 +9,7 @@ stages:
- Release - Release
variables: variables:
ENTRY_FOLDER: $CI_PROJECT_DIR/test # test directory for testing CI/CD, or assets directory for normal operations ENTRY_FOLDER: test # test directory for testing CI/CD, or assets directory for normal operations
RELEASE_VERSION: v0.$CI_PIPELINE_IID RELEASE_VERSION: v0.$CI_PIPELINE_IID
PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${PACKAGE_NAME}/${RELEASE_VERSION}" PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${PACKAGE_NAME}/${RELEASE_VERSION}"
@ -18,16 +18,16 @@ variables:
stage: Manifest stage: Manifest
image: node:latest image: node:latest
rules: rules:
#- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_TAG - if: $CI_COMMIT_TAG
when: never when: never
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- changes: - changes:
- ${ENTRY_FOLDER}/${PACKAGE_NAME}/* - ${ENTRY_FOLDER}/${PACKAGE_NAME}/*
script: script:
- cd src/ - cd src/
- npm install - npm install
- npm run start - npm run start
- cat ${ENTRY_FOLDER}/${PACKAGE_NAME}/theme.json - cat ../${ENTRY_FOLDER}/${PACKAGE_NAME}/theme.json
- npm run test - npm run test
artifacts: artifacts:
paths: paths:
@ -39,7 +39,7 @@ variables:
stage: Test stage: Test
image: python:latest image: python:latest
rules: rules:
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd" #- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_PIPELINE_SOURCE == "merge_request_event" - if: $CI_PIPELINE_SOURCE == "merge_request_event"
changes: changes:
- ${ENTRY_FOLDER}/${PACKAGE_NAME}/* - ${ENTRY_FOLDER}/${PACKAGE_NAME}/*
@ -53,9 +53,9 @@ variables:
stage: Bundle stage: Bundle
image: javieraviles/zip:latest image: javieraviles/zip:latest
rules: rules:
#- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_TAG - if: $CI_COMMIT_TAG
when: never when: never
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes: changes:
- ${ENTRY_FOLDER}/${PACKAGE_NAME}/* - ${ENTRY_FOLDER}/${PACKAGE_NAME}/*
@ -71,9 +71,9 @@ variables:
stage: Distribute stage: Distribute
image: curlimages/curl:latest image: curlimages/curl:latest
rules: rules:
#- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_TAG - if: $CI_COMMIT_TAG
when: never when: never
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes: changes:
- ${ENTRY_FOLDER}/${PACKAGE_NAME}/* - ${ENTRY_FOLDER}/${PACKAGE_NAME}/*
@ -87,9 +87,9 @@ variables:
stage: Release stage: Release
image: registry.gitlab.com/gitlab-org/release-cli:latest image: registry.gitlab.com/gitlab-org/release-cli:latest
rules: rules:
#- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_TAG - if: $CI_COMMIT_TAG
when: never when: never
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "cicd"
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes: changes:
- ${ENTRY_FOLDER}/${PACKAGE_NAME}/* - ${ENTRY_FOLDER}/${PACKAGE_NAME}/*

18
.vscode/launch.json vendored
View File

@ -12,7 +12,8 @@
"start" "start"
], ],
"env": { "env": {
"ENTRY_FOLDER": "${workspaceFolder}/test", "CI_PROJECT_DIR": "${workspaceFolder}",
"ENTRY_FOLDER": "test",
"PACKAGE_NAME": "valid_set" "PACKAGE_NAME": "valid_set"
}, },
"skipFiles": [ "skipFiles": [
@ -30,7 +31,8 @@
"test" "test"
], ],
"env": { "env": {
"ENTRY_FOLDER": "${workspaceFolder}/test", "CI_PROJECT_DIR": "${workspaceFolder}",
"ENTRY_FOLDER": "test",
"PACKAGE_NAME": "valid_set" "PACKAGE_NAME": "valid_set"
}, },
"skipFiles": [ "skipFiles": [
@ -51,7 +53,8 @@
"--color=yes" "--color=yes"
], ],
"env": { "env": {
"ENTRY_FOLDER": "${workspaceFolder}/test", "CI_PROJECT_DIR": "${workspaceFolder}",
"ENTRY_FOLDER": "test",
"PACKAGE_NAME": "valid_set" "PACKAGE_NAME": "valid_set"
}, },
"justMyCode": true "justMyCode": true
@ -67,7 +70,8 @@
"start" "start"
], ],
"env": { "env": {
"ENTRY_FOLDER": "${workspaceFolder}/test", "CI_PROJECT_DIR": "${workspaceFolder}",
"ENTRY_FOLDER": "test",
"PACKAGE_NAME": "existing_valid_theme_set" "PACKAGE_NAME": "existing_valid_theme_set"
}, },
"skipFiles": [ "skipFiles": [
@ -85,7 +89,8 @@
"test" "test"
], ],
"env": { "env": {
"ENTRY_FOLDER": "${workspaceFolder}/test", "CI_PROJECT_DIR": "${workspaceFolder}",
"ENTRY_FOLDER": "test",
"PACKAGE_NAME": "existing_valid_theme_set" "PACKAGE_NAME": "existing_valid_theme_set"
}, },
"skipFiles": [ "skipFiles": [
@ -106,7 +111,8 @@
"--color=yes" "--color=yes"
], ],
"env": { "env": {
"ENTRY_FOLDER": "${workspaceFolder}/test", "CI_PROJECT_DIR": "${workspaceFolder}",
"ENTRY_FOLDER": "test",
"PACKAGE_NAME": "existing_valid_theme_set" "PACKAGE_NAME": "existing_valid_theme_set"
}, },
"justMyCode": true "justMyCode": true

View File

@ -5,10 +5,11 @@ const { exit } = require("process");
// Fetch envs to target the right folder // Fetch envs to target the right folder
const slug = process.env["PACKAGE_NAME"]; const workDir = process.env["CI_PROJECT_DIR"];
const root = process.env["ENTRY_FOLDER"]; const root = process.env["ENTRY_FOLDER"];
if (!slug || !root) exit(1); const slug = process.env["PACKAGE_NAME"];
let workingDirectory = path.join(root, slug); if (!workDir || !slug || !root) exit(1);
let workingDirectory = path.join(workDir, root, slug);
// extract metadata from them // extract metadata from them
fs.readdir(workingDirectory, (err, files) => { fs.readdir(workingDirectory, (err, files) => {

View File

@ -33,11 +33,13 @@ function flatReferences(manifest) {
describe('Mandatory Checks', function () { describe('Mandatory Checks', function () {
before(function () { before(function () {
const workDir = process.env["CI_PROJECT_DIR"];
expect(workDir).to.be.a("string").that.is.not.empty;
const slug = process.env["PACKAGE_NAME"]; const slug = process.env["PACKAGE_NAME"];
expect(slug).to.be.a("string").that.is.not.empty; expect(slug).to.be.a("string").that.is.not.empty;
const root = process.env["ENTRY_FOLDER"]; const root = process.env["ENTRY_FOLDER"];
expect(root).to.be.a("string").that.is.not.empty; expect(root).to.be.a("string").that.is.not.empty;
workingDirectory = path.join(root, slug); workingDirectory = path.join(workDir, root, slug);
files = fs.readdirSync(workingDirectory); files = fs.readdirSync(workingDirectory);
expect(files).to.be.an('array').that.is.not.empty; expect(files).to.be.an('array').that.is.not.empty;
validator = ajv.compile(JSON.parse(fs.readFileSync(themeSchemaFile, 'utf8'))); validator = ajv.compile(JSON.parse(fs.readFileSync(themeSchemaFile, 'utf8')));

View File

@ -40,9 +40,10 @@ def _validate_brightness_image(working_path, theme_config, high_light, image_lis
@pytest.fixture @pytest.fixture
def working_path(): def working_path():
# get the global variables containing gitlab-given project slug. # get the global variables containing gitlab-given project slug.
work_directory = os.environ["CI_PROJECT_DIR"]
entry_folder = os.environ["ENTRY_FOLDER"]
project_slug = os.environ["PACKAGE_NAME"] project_slug = os.environ["PACKAGE_NAME"]
root_folder = os.environ["ENTRY_FOLDER"] working_path = Path(work_directory, entry_folder, project_slug)
working_path = Path(root_folder, project_slug)
if not working_path.is_dir(): if not working_path.is_dir():
raise FileNotFoundError(f"No project found for the given {working_path}.") raise FileNotFoundError(f"No project found for the given {working_path}.")
return working_path return working_path

View File

@ -2,12 +2,12 @@
"dayImageList": [ "dayImageList": [
1 1
], ],
"imageFilename": "stray__*.jpg",
"nightImageList": [ "nightImageList": [
2 2
], ],
"sunsetImageList": [],
"sunriseImageList": [],
"imageFilename": "stray__*.jpg",
"imageCredits": "©Thoscellen, ©BlueTwelve", "imageCredits": "©Thoscellen, ©BlueTwelve",
"displayName": "Stray" "sunriseImageList": [],
"displayName": "Stray",
"sunsetImageList": []
} }

View File

@ -1,7 +1,7 @@
{ {
"imageFilename": "bl3_landscape_*.jpg", "imageFilename": "bl3_landscape_*.jpg",
"imageCredits": "© Gearbox",
"displayName": "BL3", "displayName": "BL3",
"imageCredits": "© Gearbox",
"dayImageList": [ "dayImageList": [
2 2
], ],