Skip to content
Snippets Groups Projects
Unverified Commit 6e560989 authored by Mateusz Tyszczak's avatar Mateusz Tyszczak :scroll:
Browse files

Move supplement doc url to build job base

parent 809760aa
No related branches found
No related tags found
1 merge request!74Update pnpm workspace-related common configuration files
Pipeline #116273 passed
......@@ -46,6 +46,7 @@ PROJECT_ACCESS_TOKEN="${3:?Missing arg #3 pointing a Gitlab repository access to
DIST_DIR="${4:?Missing arg #4 pointing the dist directory}"
FEATURE_BRANCH_NAME="${5:?Missing arg #5 pointing a branch name}"
FINAL_MERGE="${6:?Missing arg #6 pointing the final merge flag value}"
DOC_URL="${7:?Missing arg #7 pointing the documentation URL}"
if [ "${FINAL_MERGE}" = "true" ]; then
FINAL_MERGE=1
......@@ -111,16 +112,8 @@ else
git push origin "HEAD:main"
fi
if [ ${FINAL_MERGE} -eq 1 ]; then
DOC_URL="${PROJECT_URL}/-/wikis/home"
else
DOC_URL="${PROJECT_URL}/-/wikis/non-stable/${FEATURE_BRANCH_NAME}/home"
fi
perform_wiki_cleanup "${WIKI_REPO_DIR}/non-stable" "${PROJECT_URL}"
echo "Documentation is available at url: ${DOC_URL}"
echo "Documentation url: ${DOC_URL}"
popd
echo GEN_DOC_URL="${DOC_URL}" > "gen_doc.env"
#!/bin/bash
set -e
PROJECT_DIR="${1:?Missing arg #1 specifying a project source directory}"
PROJECT_URL="${2:?Missing arg #2 pointing project url. It is provided by CI_PROJECT_URL variable}"
FEATURE_BRANCH_NAME="${3:?Missing arg #3 pointing a branch name}"
FINAL_MERGE="${4:?Missing arg #4 pointing the final merge flag value}"
REPLACE_ENV_NAME="${5:-GEN_DOC_URL}"
REPLACE_FILE_PATH="${6:-${PROJECT_DIR}/README.md}"
pushd "${PROJECT_DIR}"
if [ "${FINAL_MERGE}" = "true" ]; then
FINAL_MERGE=1
else
FINAL_MERGE=0
fi
if [ ${FINAL_MERGE} -eq 1 ]; then
DOC_URL="${PROJECT_URL}/-/wikis/home"
else
DOC_URL="${PROJECT_URL}/-/wikis/non-stable/${FEATURE_BRANCH_NAME}/home"
fi
echo "Documentation url: ${DOC_URL}"
sed -i "s<\${${REPLACE_ENV_NAME}}<${DOC_URL}<g" "${REPLACE_FILE_PATH}"
if grep -q "\${${REPLACE_ENV_NAME}}" "${REPLACE_FILE_PATH}"; then
echo "Failed to replace the documentation url in ${REPLACE_FILE_PATH}"
exit 1;
fi # Ensure that the placeholder was replaced
echo "Replaced the documentation url: \"\${${REPLACE_ENV_NAME}}\" => \"${DOC_URL}\" in file: \"${REPLACE_FILE_PATH}\""
popd
echo ${REPLACE_ENV_NAME}="${DOC_URL}" > "gen_doc.env"
......@@ -110,6 +110,10 @@ variables:
# Output directory where should be stored package - it should be overrided by derived job
DIST_DIR: ""
PROJECT_URL: "${CI_PROJECT_URL}"
REPLACE_DOC_URL_ENV: ""
REPLACE_FILE_PATH: "${SOURCE_DIR}/README.md"
# Target package scope - it should be overrided by derived job
NPM_PACKAGE_SCOPE: ""
# Target package name - it should be overrided by derived job
......@@ -117,15 +121,18 @@ variables:
NPM_REGISTRY_URL: "gitlab.syncad.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/"
script:
- if [ -n $REPLACE_DOC_URL_ENV ]; then /home/emscripten/scripts/npm_set_doc_url.sh "${SOURCE_DIR}" "${PROJECT_URL}" "${CI_COMMIT_REF_NAME}" "${CI_COMMIT_REF_PROTECTED}" "${REPLACE_DOC_URL_ENV}" "${REPLACE_FILE_PATH}"; fi
- /home/emscripten/scripts/npm_build_package.sh "${SOURCE_DIR}" "${NPM_REGISTRY_URL}" "${NPM_PACKAGE_SCOPE}" "${NPM_PACKAGE_NAME}" "${DIST_DIR}" "${CI_COMMIT_REF_PROTECTED}" "${CI_COMMIT_TAG}"
artifacts:
reports:
dotenv:
- "gen_doc.env" # contains URL to generated documentation pointed by `GEN_DOC_URL` variable
- "${SOURCE_DIR}/built_package_info.env" # contains path to produced tgz
- "${SOURCE_DIR}/built_package_version_info.env" # contains information related to generated package version and git revision
paths:
- "${REPLACE_FILE_PATH}"
- "${DIST_DIR}/*.tgz" # Built package
- "${DIST_DIR}/built_package_info.json"
......@@ -224,6 +231,7 @@ variables:
variables:
# Must be overrided by derived job
WIKI_PUSH_TOKEN: ""
DOC_URL: "${GEN_DOC_URL}"
# The directory containing sources to be built - it can be overrided by derived job
SOURCE_DIR: "${CI_PROJECT_DIR}"
......@@ -232,14 +240,5 @@ variables:
DIST_DIR: "$CI_PROJECT_DIR/dist"
script:
# start always at project root dir, to make sure .env file (included in artifacts) is generated there
- cd "${CI_PROJECT_DIR}"
- /home/emscripten/scripts/npm_push_doc.sh "${SOURCE_DIR}" "${PROJECT_URL}" "${WIKI_PUSH_TOKEN}" "${DIST_DIR}" "${CI_COMMIT_REF_NAME}" "${CI_COMMIT_REF_PROTECTED}"
artifacts:
reports:
dotenv:
- "gen_doc.env" # contains URL to generated documentation pointed by `GEN_DOC_URL` variable
when: always
expire_in: 1 week
- /home/emscripten/scripts/npm_push_doc.sh "${SOURCE_DIR}" "${PROJECT_URL}" "${WIKI_PUSH_TOKEN}" "${DIST_DIR}" "${CI_COMMIT_REF_NAME}" "${CI_COMMIT_REF_PROTECTED}" "${DOC_URL}"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment