butter-kanglam-ui/.gitlab-ci.yml
2025-02-18 11:58:59 -06:00

63 lines
No EOL
1.9 KiB
YAML

image: ruby:3.1
variables:
JEKYLL_ENV: production
LC_ALL: C.UTF-8
before_script:
- bundle install
test:
stage: test
script:
- bundle exec jekyll build -d test
artifacts:
paths:
- test
except:
- butter-box
# This includes 3 separate builds.
# The main one is for the GitLab pages deployment. It includes a simulated USB Butter drive.
# The other two are for the downloadable zips of the site in English and Spanish.
pages:
stage: deploy
script:
- apt-get update
- apt-get install -y zip
# Build the default EN version
- sed -i "s/REPLACEME/butterbox/g" _data/deployment.yml
- bundle exec jekyll build -d public
- cd public
- zip -r ../site-en.zip ./
- cd ..
- git restore .
# Build the ES version (TODO: use a single build for all deployments)
- "sed -i 's/^languages:.*/languages: [\"es\", \"en\", \"fr_SN\", \"pt_AO\"]/g' ../butter-box-ui/_config.yml"
- sed -i "s/REPLACEME/comolamantequilla/g" _data/deployment.yml
- bundle exec jekyll build -d public
- cd public
- zip -r ../site-es.zip ./
- cd ..
- git restore .
# Now go build the site we actually want to deploy.
# simulate the drive being inserted
- mv simulated-usb-butter usb-butter
# Get the latest build of the FDroid PWA for butter
- curl https://likebutter.gitlab.io/fdroid-webdash-butter/public.zip -o fdroid-webdash-butter.zip
- unzip fdroid-webdash-butter.zip
- mv build/web/* usb-butter/appstore
# TODO: Place a sample app store here
- "sed -i 's/^baseurl.*/baseurl: \"\\/butter-box-ui\"/' _config.yml"
- "sed -i 's/^usb_butter_url.*/usb_butter_url: \"\\/butter-box-ui\\/usb-butter\\/\"/' _config.yml"
- bundle exec jekyll build -d public
# Now move the zip into the public dir so it gets served.
- mv ./site-en.zip ./public/site-en.zip
- mv ./site-es.zip ./public/site-es.zip
- pwd
- ls -la .
artifacts:
paths:
- public
only:
- butter-box