Ajout FishPeper
This commit is contained in:
502
cncjs/appveyor.yml
Normal file
502
cncjs/appveyor.yml
Normal file
@@ -0,0 +1,502 @@
|
||||
# https://stefanscherer.github.io/use-appveyor-to-build-multi-arch-docker-image/
|
||||
|
||||
version: "{build}-{branch}"
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
#- job_name: Linux build (i386)
|
||||
# appveyor_build_worker_image: Ubuntu
|
||||
# nodejs_version: "12"
|
||||
# ARCH: i386
|
||||
- job_name: Linux build (amd64)
|
||||
appveyor_build_worker_image: Ubuntu2004
|
||||
nodejs_version: "12"
|
||||
ARCH: amd64
|
||||
- job_name: Linux build (arm)
|
||||
appveyor_build_worker_image: Ubuntu2004
|
||||
nodejs_version: "12"
|
||||
ARCH: arm
|
||||
- job_name: Linux build (arm64)
|
||||
appveyor_build_worker_image: Ubuntu2004
|
||||
nodejs_version: "12"
|
||||
ARCH: arm64
|
||||
- job_name: macOS build (x64)
|
||||
appveyor_build_worker_image: macos
|
||||
nodejs_version: "12"
|
||||
ARCH: x64
|
||||
- job_name: Windows build (x64)
|
||||
appveyor_build_worker_image: Visual Studio 2019
|
||||
nodejs_version: "12"
|
||||
ARCH: x64
|
||||
- job_name: Windows build (x86)
|
||||
appveyor_build_worker_image: Visual Studio 2019
|
||||
nodejs_version: "12"
|
||||
ARCH: x86
|
||||
global:
|
||||
GITHUB_TOKEN:
|
||||
secure: G9Qlv8MYhgvYlUxWWUiDdfIUTrKcia16HAdzkVydWqC+wo60XrC8nk1Q2R9WKGXx
|
||||
|
||||
for:
|
||||
# Linux
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
#- job_name: Linux build (i386)
|
||||
- job_name: Linux build (amd64)
|
||||
- job_name: Linux build (arm)
|
||||
- job_name: Linux build (arm64)
|
||||
fast_finish: true
|
||||
|
||||
init:
|
||||
- uname -a
|
||||
- git --version
|
||||
- git config --global core.autocrlf false
|
||||
- git config --global user.name "AppVeyor"
|
||||
- git config --global user.email "appveyor@ci.appveyor.com"
|
||||
- sh: |
|
||||
export CI_BRANCH=$APPVEYOR_REPO_BRANCH
|
||||
export CI_BUILD_NUMBER=$APPVEYOR_BUILD_NUMBER
|
||||
export CI_COMMIT=$APPVEYOR_REPO_COMMIT
|
||||
export CI_COMMIT_SHORT=${APPVEYOR_REPO_COMMIT:0:8}
|
||||
export CI_COMMIT_TIMESTAMP=$APPVEYOR_REPO_COMMIT_TIMESTAMP
|
||||
export CI_TAG=$APPVEYOR_REPO_TAG_NAME
|
||||
echo "• ARCH=$ARCH"
|
||||
echo "• CI_BRANCH=$CI_BRANCH"
|
||||
echo "• CI_BUILD_NUMBER=$CI_BUILD_NUMBER"
|
||||
echo "• CI_COMMIT=$CI_COMMIT"
|
||||
echo "• CI_COMMIT_SHORT=$CI_COMMIT_SHORT"
|
||||
echo "• CI_COMMIT_TIMESTAMP=$CI_COMMIT_TIMESTAMP"
|
||||
echo "• CI_TAG=$CI_TAG"
|
||||
|
||||
install:
|
||||
# https://github.com/cfillion/reapack/blob/master/.appveyor.yml
|
||||
- |
|
||||
sudo cp -af /etc/apt/sources.list /etc/apt/sources.list.old
|
||||
sudo sed -i '/arch=/! s/^deb/deb [arch=amd64,i386]/' /etc/apt/sources.list
|
||||
awk '
|
||||
$3 !~ /ubuntu\.com/ { next }
|
||||
$1 == "deb" {
|
||||
$2 = "[arch=armhf,arm64]";
|
||||
$3 = "http://ports.ubuntu.com/ubuntu-ports/"
|
||||
} 1' /etc/apt/sources.list | sudo dd of=/etc/apt/sources.list.d/ports.list
|
||||
diff -uN /etc/apt/sources.list.old /etc/apt/sources.list
|
||||
cat /etc/apt/sources.list.d/ports.list
|
||||
- sudo dpkg --print-architecture
|
||||
- sudo dpkg --add-architecture arm64
|
||||
- sudo dpkg --add-architecture armhf
|
||||
#- sudo dpkg --add-architecture i386
|
||||
- sudo dpkg --print-foreign-architectures
|
||||
- sudo apt-get update
|
||||
- sudo apt-get install --no-install-recommends -y icnsutils graphicsmagick gcc-multilib g++-multilib rpm
|
||||
- nvm install $nodejs_version
|
||||
- npm config set loglevel warn
|
||||
- npm config set scripts-prepend-node-path auto
|
||||
- npm install -g npm
|
||||
- npm install -g yarn
|
||||
- yarn
|
||||
|
||||
build_script:
|
||||
- sh: |
|
||||
yarn clean
|
||||
yarn lint
|
||||
yarn test
|
||||
if [[ -z "$CI_TAG" ]]; then
|
||||
yarn build-latest
|
||||
else
|
||||
yarn build
|
||||
fi
|
||||
- sh: |
|
||||
# i386
|
||||
if [[ "$ARCH" == "i386" ]]; then
|
||||
GIT_COMMIT_LOG=`git log -1 --format='%ci %H %s'`
|
||||
PACKAGE_NAME=`node -e "console.log(require('./src/package.json').name)"`
|
||||
PACKAGE_VERSION=`node -e "console.log(require('./src/package.json').version)"`
|
||||
PRODUCT_NAME=CNCjs
|
||||
yarn build:linux-ia32
|
||||
ls -al output output/*
|
||||
mkdir -p releases/linux
|
||||
cp -af "output/${PACKAGE_NAME}-${PACKAGE_VERSION}.i686.rpm" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.i686.rpm"
|
||||
cp -af "output/${PRODUCT_NAME}-${PACKAGE_VERSION}-i386.AppImage" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-i386.AppImage"
|
||||
cp -af "output/${PACKAGE_NAME}_${PACKAGE_VERSION}_i386.deb" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-i386.deb"
|
||||
pushd releases/linux
|
||||
ln -sf ../../output/linux-ia32-unpacked "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-ia32"
|
||||
tar zcfh "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-ia32.tar.gz" "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-ia32"
|
||||
rm -f "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-ia32";
|
||||
popd
|
||||
ls -al releases/linux/*
|
||||
if [[ "$CI_BRANCH" == "master" && -z "$CI_TAG" ]]; then
|
||||
yarn github-release delete \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
"*-linux-i386.AppImage" \
|
||||
"*-linux-i386.deb" \
|
||||
"*-linux.i686.rpm" \
|
||||
"*-linux-ia32.tar.gz";
|
||||
yarn github-release upload \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
--body="${COMMIT_LOG}" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.i686.rpm" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-i386.AppImage" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-i386.deb" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-ia32.tar.gz";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.i686.rpm";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-i386.AppImage";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-i386.deb";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-ia32.tar.gz";
|
||||
fi
|
||||
fi
|
||||
- sh: |
|
||||
# amd64
|
||||
if [[ "$ARCH" == "amd64" ]]; then
|
||||
GIT_COMMIT_LOG=`git log -1 --format='%ci %H %s'`
|
||||
PACKAGE_NAME=`node -e "console.log(require('./src/package.json').name)"`
|
||||
PACKAGE_VERSION=`node -e "console.log(require('./src/package.json').version)"`
|
||||
PRODUCT_NAME=CNCjs
|
||||
yarn build:linux-x64
|
||||
ls -al output output/*
|
||||
mkdir -p releases/linux
|
||||
cp -af "output/${PACKAGE_NAME}-${PACKAGE_VERSION}.x86_64.rpm" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.x86_64.rpm"
|
||||
cp -af "output/${PRODUCT_NAME}-${PACKAGE_VERSION}.AppImage" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x86_64.AppImage"
|
||||
cp -af "output/${PACKAGE_NAME}_${PACKAGE_VERSION}_amd64.deb" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-amd64.deb"
|
||||
pushd releases/linux
|
||||
ln -sf ../../output/linux-unpacked "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x64"
|
||||
tar zcfh "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x64.tar.gz" "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x64"
|
||||
rm -f "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x64"
|
||||
popd
|
||||
ls -al releases/linux/*
|
||||
if [[ "$CI_BRANCH" == "master" && -z "$CI_TAG" ]]; then
|
||||
yarn github-release delete \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
"*-linux.x86_64.rpm" \
|
||||
"*-linux-x86_64.AppImage" \
|
||||
"*-linux-amd64.deb" \
|
||||
"*-linux-x64.tar.gz";
|
||||
yarn github-release upload \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
--body="${GIT_COMMIT_LOG}" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.x86_64.rpm" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x86_64.AppImage" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-amd64.deb" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x64.tar.gz";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.x86_64.rpm";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x86_64.AppImage";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-amd64.deb";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-x64.tar.gz";
|
||||
fi
|
||||
fi
|
||||
- sh: |
|
||||
# arm
|
||||
if [[ "$ARCH" == "arm" ]]; then
|
||||
GIT_COMMIT_LOG=`git log -1 --format='%ci %H %s'`
|
||||
PACKAGE_NAME=`node -e "console.log(require('./src/package.json').name)"`
|
||||
PACKAGE_VERSION=`node -e "console.log(require('./src/package.json').version)"`
|
||||
PRODUCT_NAME=CNCjs
|
||||
yarn build:linux-armv7l
|
||||
ls -al output output/*
|
||||
mkdir -p releases/linux
|
||||
cp -af "output/${PACKAGE_NAME}-${PACKAGE_VERSION}.armv7l.rpm" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.armv7l.rpm"
|
||||
cp -af "output/${PRODUCT_NAME}-${PACKAGE_VERSION}-armv7l.AppImage" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.AppImage"
|
||||
cp -af "output/${PACKAGE_NAME}_${PACKAGE_VERSION}_armv7l.deb" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.deb"
|
||||
pushd releases/linux
|
||||
ln -sf ../../output/linux-armv7l-unpacked "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l"
|
||||
tar zcfh "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.tar.gz" "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l"
|
||||
rm -f "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l"
|
||||
popd
|
||||
ls -al releases/linux/*
|
||||
if [[ "$CI_BRANCH" == "master" && -z "$CI_TAG" ]]; then
|
||||
yarn github-release delete \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
"*-linux.armv7l.rpm" \
|
||||
"*-linux-armv7l.AppImage" \
|
||||
"*-linux-armv7l.deb" \
|
||||
"*-linux-armv7l.tar.gz";
|
||||
yarn github-release upload \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
--body="${GIT_COMMIT_LOG}" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.armv7l.rpm" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.AppImage" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.deb" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.tar.gz";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.armv7l.rpm";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.AppImage";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.deb";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-armv7l.tar.gz";
|
||||
fi
|
||||
fi
|
||||
- sh: |
|
||||
# arm64
|
||||
if [[ "$ARCH" == "arm64" ]]; then
|
||||
GIT_COMMIT_LOG=`git log -1 --format='%ci %H %s'`
|
||||
PACKAGE_NAME=`node -e "console.log(require('./src/package.json').name)"`
|
||||
PACKAGE_VERSION=`node -e "console.log(require('./src/package.json').version)"`
|
||||
PRODUCT_NAME=CNCjs
|
||||
yarn build:linux-arm64
|
||||
ls -al output output/*
|
||||
mkdir -p releases/linux
|
||||
cp -af "output/${PACKAGE_NAME}-${PACKAGE_VERSION}.arm64.rpm" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.arm64.rpm"
|
||||
cp -af "output/${PRODUCT_NAME}-${PACKAGE_VERSION}-arm64.AppImage" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.AppImage"
|
||||
cp -af "output/${PACKAGE_NAME}_${PACKAGE_VERSION}_arm64.deb" "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.deb"
|
||||
pushd releases/linux
|
||||
ln -sf ../../output/linux-arm64-unpacked "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64"
|
||||
tar zcfh "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.tar.gz" "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64"
|
||||
rm -f "${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64"
|
||||
popd
|
||||
ls -al releases/linux/*
|
||||
if [[ "$CI_BRANCH" == "master" && -z "$CI_TAG" ]]; then
|
||||
yarn github-release delete \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
"*-linux.arm64.rpm" \
|
||||
"*-linux-arm64.AppImage" \
|
||||
"*-linux-arm64.deb" \
|
||||
"*-linux-arm64.tar.gz";
|
||||
yarn github-release upload \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
--body="${GIT_COMMIT_LOG}" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.arm64.rpm" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.AppImage" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.deb" \
|
||||
"releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.tar.gz";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux.arm64.rpm";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.AppImage";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.deb";
|
||||
rm -f "releases/linux/${PACKAGE_NAME}-${PACKAGE_VERSION}-linux-arm64.tar.gz";
|
||||
fi
|
||||
fi
|
||||
|
||||
test: off
|
||||
|
||||
# Packaging artifacts
|
||||
# https://www.appveyor.com/docs/packaging-artifacts
|
||||
artifacts:
|
||||
- path: releases/linux/*
|
||||
|
||||
# Publishing artifacts to GitHub Releases
|
||||
# https://www.appveyor.com/docs/deployment/github
|
||||
deploy:
|
||||
- provider: GitHub
|
||||
auth_token:
|
||||
secure: G9Qlv8MYhgvYlUxWWUiDdfIUTrKcia16HAdzkVydWqC+wo60XrC8nk1Q2R9WKGXx
|
||||
draft: false
|
||||
prerelease: false
|
||||
on:
|
||||
appveyor_repo_tag: true # deploy on tag push only
|
||||
nodejs_version: "12"
|
||||
|
||||
# macOS
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- job_name: macOS build (x64)
|
||||
fast_finish: true
|
||||
|
||||
init:
|
||||
- uname -a
|
||||
- git --version
|
||||
- git config --global core.autocrlf false
|
||||
- git config --global user.name "AppVeyor"
|
||||
- git config --global user.email "appveyor@ci.appveyor.com"
|
||||
- sh: |
|
||||
export CI_BRANCH=$APPVEYOR_REPO_BRANCH
|
||||
export CI_BUILD_NUMBER=$APPVEYOR_BUILD_NUMBER
|
||||
export CI_COMMIT=$APPVEYOR_REPO_COMMIT
|
||||
export CI_COMMIT_SHORT=${APPVEYOR_REPO_COMMIT:0:8}
|
||||
export CI_COMMIT_TIMESTAMP=$APPVEYOR_REPO_COMMIT_TIMESTAMP
|
||||
export CI_TAG=$APPVEYOR_REPO_TAG_NAME
|
||||
echo "• ARCH=$ARCH"
|
||||
echo "• CI_BRANCH=$CI_BRANCH"
|
||||
echo "• CI_BUILD_NUMBER=$CI_BUILD_NUMBER"
|
||||
echo "• CI_COMMIT=$CI_COMMIT"
|
||||
echo "• CI_COMMIT_SHORT=$CI_COMMIT_SHORT"
|
||||
echo "• CI_COMMIT_TIMESTAMP=$CI_COMMIT_TIMESTAMP"
|
||||
echo "• CI_TAG=$CI_TAG"
|
||||
|
||||
install:
|
||||
- nvm install $nodejs_version
|
||||
- security import "scripts/certs/Certum-Code-Signing-CA-SHA2.cer" -k ~/Library/Keychains/login.keychain -T /usr/bin/codesign
|
||||
- npm config set loglevel warn
|
||||
- npm config set scripts-prepend-node-path auto
|
||||
- npm install -g npm
|
||||
- npm install -g yarn
|
||||
- yarn
|
||||
|
||||
build_script:
|
||||
- sh: |
|
||||
yarn clean
|
||||
yarn lint
|
||||
yarn test
|
||||
if [[ -z "$CI_TAG" ]]; then
|
||||
yarn build-latest
|
||||
else
|
||||
yarn build
|
||||
fi
|
||||
- sh: |
|
||||
# x64
|
||||
if [[ "$ARCH" == "x64" ]]; then
|
||||
GIT_COMMIT_LOG=`git log -1 --format='%ci %H %s'`
|
||||
PACKAGE_NAME=`node -e "console.log(require('./src/package.json').name)"`
|
||||
PACKAGE_VERSION=`node -e "console.log(require('./src/package.json').version)"`
|
||||
PRODUCT_NAME=CNCjs
|
||||
yarn build:macos-x64
|
||||
ls -al output output/*
|
||||
mkdir -p releases/macos
|
||||
cp -af "output/${PRODUCT_NAME}-${PACKAGE_VERSION}.dmg" "releases/macos/${PACKAGE_NAME}-${PACKAGE_VERSION}-macos.x64.dmg"
|
||||
ls -al releases/macos/*
|
||||
if [[ "$CI_BRANCH" == "master" && -z "$CI_TAG" ]]; then
|
||||
yarn github-release delete \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
"*-macos.x64.dmg";
|
||||
yarn github-release upload \
|
||||
--owner=cncjs \
|
||||
--repo=cncjs \
|
||||
--tag="${CI_BRANCH}-latest" \
|
||||
--release-name="${CI_BRANCH}" \
|
||||
--body="${GIT_COMMIT_LOG}" \
|
||||
"releases/macos/${PACKAGE_NAME}-${PACKAGE_VERSION}-macos.x64.dmg";
|
||||
rm -f "releases/macos/${PACKAGE_NAME}-${PACKAGE_VERSION}-macos.x64.dmg";
|
||||
fi
|
||||
fi
|
||||
|
||||
test: off
|
||||
|
||||
# Packaging artifacts
|
||||
# https://www.appveyor.com/docs/packaging-artifacts
|
||||
artifacts:
|
||||
- path: releases/macos/*
|
||||
|
||||
# Publishing artifacts to GitHub Releases
|
||||
# https://www.appveyor.com/docs/deployment/github
|
||||
deploy:
|
||||
- provider: GitHub
|
||||
auth_token:
|
||||
secure: 14dS/9loZ4uMoKGOHGkagaYp5oS30HSIQcPB0FEa7aTEfpb2VJQiUms82hv8nWxY
|
||||
draft: false
|
||||
prerelease: false
|
||||
on:
|
||||
appveyor_repo_tag: true # deploy on tag push only
|
||||
nodejs_version: "12"
|
||||
|
||||
# Windows
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- job_name: Windows build (x64)
|
||||
- job_name: Windows build (x86)
|
||||
fast_finish: true
|
||||
|
||||
init:
|
||||
- git --version
|
||||
- git config --global core.autocrlf false
|
||||
- git config --global user.name "AppVeyor"
|
||||
- git config --global user.email "appveyor@ci.appveyor.com"
|
||||
- ps: |
|
||||
$env:CI_BRANCH = $env:APPVEYOR_REPO_BRANCH
|
||||
$env:CI_BUILD_NUMBER = $env:APPVEYOR_BUILD_NUMBER
|
||||
$env:CI_COMMIT = $env:APPVEYOR_REPO_COMMIT
|
||||
$env:CI_COMMIT_SHORT = ${env:APPVEYOR_REPO_COMMIT}.SubString(0,8)
|
||||
$env:CI_COMMIT_TIMESTAMP = $env:APPVEYOR_REPO_COMMIT_TIMESTAMP
|
||||
$env:CI_TAG = $env:APPVEYOR_REPO_TAG_NAME
|
||||
Write-Host "• ARCH=$env:ARCH"
|
||||
Write-Host "• CI_BRANCH=$env:CI_BRANCH"
|
||||
Write-Host "• CI_BUILD_NUMBER=$env:CI_BUILD_NUMBER"
|
||||
Write-Host "• CI_COMMIT=$env:CI_COMMIT"
|
||||
Write-Host "• CI_COMMIT_SHORT=$env:CI_COMMIT_SHORT"
|
||||
Write-Host "• CI_COMMIT_TIMESTAMP=$env:CI_COMMIT_TIMESTAMP"
|
||||
Write-Host "• CI_TAG=$env:CI_TAG"
|
||||
|
||||
install:
|
||||
- ps: Install-Product node $env:nodejs_version
|
||||
- npm config set loglevel warn
|
||||
- npm config set scripts-prepend-node-path auto
|
||||
- npm install -g npm
|
||||
- npm install -g yarn
|
||||
- yarn
|
||||
|
||||
build_script:
|
||||
- ps: |
|
||||
yarn clean
|
||||
yarn lint
|
||||
yarn test
|
||||
if (-not $env:CI_TAG) {
|
||||
yarn build-latest
|
||||
} else {
|
||||
yarn build
|
||||
}
|
||||
- ps: |
|
||||
if ($env:ARCH -eq "x64") {
|
||||
$GIT_COMMIT_LOG = git log -1 --format='%ci %H %s'
|
||||
$PACKAGE_NAME = node -e "console.log(require('./src/package.json').name)"
|
||||
$PACKAGE_VERSION = node -e "console.log(require('./src/package.json').version)"
|
||||
$PRODUCT_NAME = "CNCjs"
|
||||
mkdir -Force -Path releases\windows
|
||||
yarn build:windows-x64
|
||||
Get-ChildItem output
|
||||
Copy-Item "output\${PRODUCT_NAME} Setup ${PACKAGE_VERSION}.exe" "releases\windows\${PACKAGE_NAME}-${PACKAGE_VERSION}-windows-x64.exe"
|
||||
Get-ChildItem releases\windows
|
||||
if ($env:CI_BRANCH -eq "master" -And -not $env:CI_TAG) {
|
||||
yarn github-release delete --owner=cncjs --repo=cncjs --tag="${env:CI_BRANCH}-latest" --release-name="${env:CI_BRANCH}" "*-windows-x64.exe"
|
||||
yarn github-release upload --owner=cncjs --repo=cncjs --tag="${env:CI_BRANCH}-latest" --release-name="${env:CI_BRANCH}" --body="${GIT_COMMIT_LOG}" "releases\windows\${PACKAGE_NAME}-${PACKAGE_VERSION}-windows-x64.exe"
|
||||
Remove-Item "releases\windows\${PACKAGE_NAME}-${PACKAGE_VERSION}-windows-x64.exe"
|
||||
}
|
||||
}
|
||||
- ps: |
|
||||
if ($env:ARCH -eq "x86") {
|
||||
$GIT_COMMIT_LOG = git log -1 --format='%ci %H %s'
|
||||
$PACKAGE_NAME = node -e "console.log(require('./src/package.json').name)"
|
||||
$PACKAGE_VERSION = node -e "console.log(require('./src/package.json').version)"
|
||||
$PRODUCT_NAME = "CNCjs"
|
||||
mkdir -Force -Path releases\windows
|
||||
yarn build:windows-ia32
|
||||
Get-ChildItem output
|
||||
Copy-Item "output\${PRODUCT_NAME} Setup ${PACKAGE_VERSION}.exe" "releases\windows\${PACKAGE_NAME}-${PACKAGE_VERSION}-windows-x86.exe"
|
||||
Get-ChildItem releases\windows
|
||||
if ($env:CI_BRANCH -eq "master" -And -not $env:CI_TAG) {
|
||||
yarn github-release delete --owner=cncjs --repo=cncjs --tag="${env:CI_BRANCH}-latest" --release-name="${env:CI_BRANCH}" "*-windows-x86.exe"
|
||||
yarn github-release upload --owner=cncjs --repo=cncjs --tag="${env:CI_BRANCH}-latest" --release-name="${env:CI_BRANCH}" --body="${GIT_COMMIT_LOG}" "releases\windows\${PACKAGE_NAME}-${PACKAGE_VERSION}-windows-x86.exe"
|
||||
Remove-Item "releases\windows\${PACKAGE_NAME}-${PACKAGE_VERSION}-windows-x86.exe"
|
||||
}
|
||||
}
|
||||
|
||||
test: off
|
||||
|
||||
# Packaging artifacts
|
||||
# https://www.appveyor.com/docs/packaging-artifacts
|
||||
artifacts:
|
||||
- path: releases\windows\*
|
||||
|
||||
# Publishing artifacts to GitHub Releases
|
||||
# https://www.appveyor.com/docs/deployment/github
|
||||
deploy:
|
||||
- provider: GitHub
|
||||
auth_token:
|
||||
secure: 14dS/9loZ4uMoKGOHGkagaYp5oS30HSIQcPB0FEa7aTEfpb2VJQiUms82hv8nWxY
|
||||
draft: false
|
||||
prerelease: false
|
||||
on:
|
||||
appveyor_repo_tag: true # deploy on tag push only
|
||||
nodejs_version: "12"
|
||||
Reference in New Issue
Block a user