Commit a89f5d95 authored by nanahira's avatar nanahira

Update .gitlab-ci.yml

parent cbfe58fa
Pipeline #39573 failed
stages:
- generate
- build
- cut
- deploy
variables:
GIT_DEPTH: "1"
.mseset:
stage: generate
dependencies: []
tags:
- linux
image: ruby:2.7.1
script:
- apt update
- apt -y install build-essential git p7zip-full curl sqlite3 libsqlite3-dev wget
- git clone --depth=1 https://code.moenext.com/mycard/ygopro-images-generator
- git clone --depth=1 https://code.moenext.com/mycard/ygopro-database
- mv ygopro-images-generator/* .
- bundle update --bundler
- cp -rf ygopro-database/locales/$locale/cards.cdb ygopro-database/$locale.cdb
- mkdir ygopro-images
-
if curl -f -L -o records.json https://cdn02.moecube.com:444/images/records-$locale.json; then
wget -O last.zip https://cdn02.moecube.com:444/images/ygopro-images-$locale.zip;
7z x -y -oygopro-images last.zip;
else
echo {} > records.json;
fi
- rm -rf ygopro-images/field ygopro-images/thumbnail
- mv arts pics
- ruby --external-encoding=utf-8 generate.rb $locale
artifacts:
paths:
- mse-sets
- ygopro-images
- records.json
en_US_mseset:
extends: .mseset
variables:
locale: en-US
.gen:
stage: build
dependencies: []
artifacts:
paths:
- ygopro-images-raw
- records.json
.mse:
extends: .gen
tags:
- image
script:
- git clone --depth=1 https://code.moenext.com/mycard/magicseteditor -b win32
- mkdir ygopro-images-raw
- mkdir "%APPDATA%\Magic Set Editor"
- bash -c 'ls -1 mse-sets/data*-$locale.mse-set | xargs -I {} -P 4 magicseteditor/mse.com --export {} "ygopro-images-raw/{card.gamecode}.png"'
en_US_mse:
extends: .mse
dependencies:
- en_US_gen
variables:
locale: en-US
zh_CN_imggen:
extends: .gen
stage: generate
tags:
- imggen
script:
- curl -L --ssl-no-revoke -o ImgGen.7z https://cdn02.moecube.com:444/ImgGen/ImgGen.7z
- curl -L --ssl-no-revoke -o ImgGen-Fonts.7z https://cdn02.moecube.com:444/ImgGen/ImgGen-Fonts.7z
- 7z x -y ImgGen.7z
- 7z x -y ImgGen-Fonts.7z
- ren arts pico
- curl -L --ssl-no-revoke -o cards.cdb https://code.moenext.com/mycard/ygopro-database/-/raw/master/locales/%locale%/cards.cdb
- ImgGen.exe cards.cdb
- ren picn ygopro-images-raw
- echo {} > records.json
variables:
locale: zh-CN
.cut:
stage: cut
tags:
- linux
script:
- apt update; apt -y install p7zip-full imagemagick git sqlite3
- mkdir -p ygopro-images/field
- |
if [ "$IMAGE_SIZE" == "AS_IS" ]; then
mv -f ygopro-images-raw/* ygopro-images/
else
ls -1 ygopro-images-raw | xargs -I {} -P $(nproc) bash -c 'convert ygopro-images-raw/{} -resize $IMAGE_SIZE ygopro-images/$(echo {} | sed "s/\.png$/.jpg/g")'
fi
# make field
- wget -O cards.cdb https://code.moenext.com/mycard/ygopro-database/-/raw/master/locales/$locale/cards.cdb
- sqlite3 cards.cdb 'select id from datas where type = 0x80002;' | xargs -I '{}' -P $(nproc) bash -c 'convert $(ls -1 ygopro-images-raw/{}.*) -resize ${FIELD_PX}x${FIELD_PX}! ygopro-images/field/{}.jpg'
- mkdir dist
- mv records.json dist/records-$locale.json
- cd ygopro-images
- 7z a -mx9 ../dist/ygopro-images-$locale.zip *
- cd ..
- mv ygopro-images dist/ygopro-images-$locale
variables:
IMAGE_SIZE: 320x464!
FIELD_PX: 512
artifacts:
paths:
- dist/
en_US_cut:
extends: .cut
dependencies:
- en_US_gen
- en_US_mse
variables:
locale: en-US
zh_CN_cut:
extends: .cut
dependencies:
- zh_CN_gen
- zh_CN_mse
variables:
locale: zh-CN
.mid_cut:
stage: generate
dependencies: []
tags:
- linux
variables:
PX: 100
artifacts:
paths:
- dist/
script:
- mkdir -p dist/ygopro-images-mid-${PX}px
- cd arts
- ls * | xargs -I {} -P $(nproc) bash -c "convert {} -resize ${PX}x${PX}! ../dist/ygopro-images-mid-${PX}px/$(echo {} | sed 's/\.png/\.jpg/')"
- cd ..
mid_cut_100px:
extends: .mid_cut
variables:
PX: 100
upload_to_minio:
stage: deploy
dependencies:
- zh_CN_cut
- en_US_cut
- mid_cut_100px
tags:
- linux
script:
- aws s3 --endpoint=https://minio.moenext.com:9000 sync --delete dist/ s3://mycard/images
only:
- master
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment