diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index a78fae2..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,44 +0,0 @@ -version: 2 -jobs: - build: - docker: - - image: circleci/node:latest - working_directory: ~/app - steps: - - checkout - - run: - name: Get current git commit message - command: | - echo "export COMMIT_MESSAGE=\"$(git log --format=oneline -n 1 $CIRCLE_SHA1)\"" >> $BASH_ENV - source $BASH_ENV - - run: - name: Install npm deployment app - command: sudo npm install -g github-release-cli - - run: - name: Build client javascript - command: | - npm install - npm run build - - deploy: - name: Create a release - command: | - PACKAGE_VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[", ]//g') - echo "Packaging to ${CIRCLE_PROJECT_REPONAME}_build-sc.zip" - zip "${CIRCLE_PROJECT_REPONAME}_build-sc.zip" index.mjs package.json public/* api/**/* api/* - echo "Creating release '${PACKAGE_VERSION}.${CIRCLE_BUILD_NUM}'" - github-release upload \ - --commitish $CIRCLE_SHA1 \ - --token $GITHUB_TOKEN \ - --owner $CIRCLE_PROJECT_USERNAME \ - --repo $CIRCLE_PROJECT_REPONAME \ - --tag "v${PACKAGE_VERSION}.${CIRCLE_BUILD_NUM}" \ - --name "v${PACKAGE_VERSION}.${CIRCLE_BUILD_NUM}" \ - --body "Automatic CircleCI Build of v${PACKAGE_VERSION}.${CIRCLE_BUILD_NUM} from ${CIRCLE_SHA1}: ${COMMIT_MESSAGE}" \ - "${CIRCLE_PROJECT_REPONAME}_build-sc.zip" - -workflows: - version: 2 - build_deploy: - jobs: - - build: - context: github-thething diff --git a/7zas b/7zas new file mode 100644 index 0000000..bb1af1d Binary files /dev/null and b/7zas differ diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 0000000..ec5083e --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,66 @@ +# version format +version: '{build}' +deploy: on + +# branches to build +branches: + # whitelist + only: + - master + +# Do not build on tags (GitHub, Bitbucket, GitLab, Gitea) +skip_tags: true + +# Maximum number of concurrent jobs for the project +max_jobs: 1 +clone_depth: 1 + +# Build worker image (VM template) +build_cloud: Docker + +environment: + docker_image: node:16-alpine + +build_script: + - sh: | + ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2 + chmod -R 777 /appveyor/projects + npm install + npm run build + +# on successful build +on_success: + - sh: | + apk add curl jq + if [ $? -eq 0 ]; then + echo "Finished installling curl and jq" + else + exit 1 + fi + CURR_VER=$(cat package.json | jq -r .version) + echo "Checking https://git.nfp.is/api/v1/repos/$APPVEYOR_REPO_NAME/releases for version v${CURR_VER}" + curl -s -X GET -H "Authorization: token $deploytoken" https://git.nfp.is/api/v1/repos/$APPVEYOR_REPO_NAME/releases | grep -o "\"name\"\:\"v${CURR_VER}\"" > /dev/null + + if [ $? -eq 0 ] ; then + echo "Release already exists, nothing to do."; + else + ./7zas a -mx9 "${CURR_VER}_build-sc.7z" package.json index.mjs api public + echo "Creating release on gitea" + RELEASE_RESULT=$(curl \ + -X POST \ + -H "Authorization: token $deploytoken" \ + -H "Content-Type: application/json" \ + https://git.nfp.is/api/v1/repos/$APPVEYOR_REPO_NAME/releases \ + -d "{\"tag_name\":\"v${CURR_VER}\",\"name\":\"v${CURR_VER}\",\"body\":\"Automatic release from Appveyor from ${APPVEYOR_REPO_COMMIT} :\n\n${APPVEYOR_REPO_COMMIT_MESSAGE}\"}") + RELEASE_ID=$(echo $RELEASE_RESULT | jq -r .id) + echo "Adding ${CURR_VER}_build-sc.7z to release ${RELEASE_ID}" + curl \ + -X POST \ + -H "Authorization: token $deploytoken" \ + -F "attachment=@${CURR_VER}_build-sc.7z" \ + https://git.nfp.is/api/v1/repos/$APPVEYOR_REPO_NAME/releases/$RELEASE_ID/assets + fi + +# on build failure +on_failure: + - sh: echo on_failure