134 lines
4.7 KiB
Docker
134 lines
4.7 KiB
Docker
# syntax = starlord.inscloudgate.net/jenkins/dockerfile:1.5.2
|
|
|
|
FROM starlord.inscloudgate.net/jenkins/core:focal
|
|
SHELL ["/usr/bin/bash", "-c"]
|
|
WORKDIR /tmp/src
|
|
RUN --mount=target=/tmp/src \
|
|
mkdir -p /tmp/dst && \
|
|
set -o errexit -o errtrace -o nounset -o pipefail && \
|
|
shopt -s globstar && \
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
config/canvas_rails_switcher.rb \
|
|
Gemfile \
|
|
Gemfile*.lock \
|
|
Gemfile.d \
|
|
gems/**/Gemfile \
|
|
gems/**/Gemfile.lock \
|
|
gems/**/*.gemspec \
|
|
gems/**/gem_version.rb \
|
|
gems/**/version.rb \
|
|
gems/plugins/**/Gemfile.d \
|
|
vendor/gems/bundler-multilock \
|
|
\
|
|
| tee /tmp/dst/ruby-runner.tar | md5sum > /tmp/dst/ruby-runner.tar.md5 && \
|
|
\
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
package.json \
|
|
yarn.lock \
|
|
gems/plugins/**/package.json \
|
|
ui/engine/**/package.json \
|
|
ui/shared/**/package.json \
|
|
packages/**/package.json \
|
|
\
|
|
| tee /tmp/dst/yarn-runner.tar | md5sum > /tmp/dst/yarn-runner.tar.md5 && \
|
|
\
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
--exclude='**/__mocks__' \
|
|
--exclude='**/__tests__' \
|
|
--exclude='**/*.test.js' \
|
|
ui/engine \
|
|
packages \
|
|
\
|
|
| tee /tmp/dst/webpack-builder.tar | md5sum > /tmp/dst/webpack-builder.tar.md5 && \
|
|
\
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
bin \
|
|
config/environments \
|
|
gems/{autoextend,canvas_color,canvas_text_helper,config_file,i18n_extraction,i18n_tasks,utf8_cleaner}/lib \
|
|
lib/canvas/cdn \
|
|
lib/rake \
|
|
lib/tasks \
|
|
ui-build \
|
|
\
|
|
config/application.rb \
|
|
config/boot.rb \
|
|
config/brandable_css.yml \
|
|
config/browsers.yml \
|
|
config/canvas_rails_switcher.rb \
|
|
config/environment.rb \
|
|
config/initializers/json.rb \
|
|
config/initializers/revved_asset_urls.rb \
|
|
db/migrate/*_regenerate_brand_files_based_on_new_defaults_*.rb \
|
|
gems/plugins/.i18n* \
|
|
lib/brandable_css.rb \
|
|
lib/canvas_logger.rb \
|
|
lib/logging_filter.rb \
|
|
lib/canvas/cdn.rb \
|
|
lib/base/canvas/reloader.rb \
|
|
.i18nignore \
|
|
.i18nrc \
|
|
Rakefile \
|
|
gulpfile.js \
|
|
webpack.config.js \
|
|
\
|
|
| tee /tmp/dst/webpack-runner-dependencies.tar | md5sum > /tmp/dst/webpack-runner-dependencies.tar.md5 && \
|
|
\
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
--exclude='**/__mocks__' \
|
|
--exclude='**/__tests__' \
|
|
app/stylesheets \
|
|
config/locales \
|
|
gems/**/config/locales \
|
|
gems/plugins/**/app/coffeescripts \
|
|
gems/plugins/**/app/jsx \
|
|
gems/plugins/**/app/stylesheets \
|
|
gems/plugins/**/app/views/jst \
|
|
gems/plugins/**/public \
|
|
public \
|
|
ui \
|
|
\
|
|
| tee /tmp/dst/webpack-runner.tar | md5sum > /tmp/dst/webpack-runner.tar.md5 && \
|
|
\
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
--exclude='vendor/qti_migration_tool' \
|
|
vendor \
|
|
\
|
|
| tee /tmp/dst/webpack-runner-vendor.tar | md5sum > /tmp/dst/webpack-runner-vendor.tar.md5 && \
|
|
\
|
|
{ \
|
|
if [ -d 'spec' ]; then \
|
|
tar --sort=name --mtime='1970-01-01' --owner=0 --group=0 --numeric-owner --mode='a+rwX' -cf - \
|
|
app/stylesheets \
|
|
config/brandable_css.yml \
|
|
config/browsers.yml \
|
|
gems/plugins/**/app/coffeescripts \
|
|
gems/plugins/**/app/jsx \
|
|
gems/plugins/**/app/stylesheets \
|
|
gems/plugins/**/public \
|
|
gems/plugins/**/spec_canvas/coffeescripts \
|
|
jest \
|
|
packages \
|
|
public \
|
|
spec/coffeescripts \
|
|
spec/javascripts \
|
|
spec/selenium/helpers/jquery.simulate.js \
|
|
tmp \
|
|
ui \
|
|
ui-build \
|
|
jest.config.js \
|
|
karma.conf.js \
|
|
package.json \
|
|
tsconfig.json \
|
|
yarn.lock \
|
|
\
|
|
| tee /tmp/dst/js.tar | md5sum > /tmp/dst/js.tar.md5; \
|
|
fi \
|
|
} && \
|
|
touch /tmp/dst/environment.sh && \
|
|
echo "RUBY_RUNNER_MD5=$(cat /tmp/dst/ruby-runner.tar.md5 | cut -d' ' -f1)" >> /tmp/dst/environment.sh && \
|
|
echo "YARN_RUNNER_MD5=$(cat /tmp/dst/yarn-runner.tar.md5 | cut -d' ' -f1)" >> /tmp/dst/environment.sh && \
|
|
echo "WEBPACK_BUILDER_MD5=$(cat /tmp/dst/webpack-builder.tar.md5 | cut -d' ' -f1)" >> /tmp/dst/environment.sh && \
|
|
echo "WEBPACK_RUNNER_MD5=$(cat /tmp/dst/webpack-runner.tar.md5 | cut -d' ' -f1)" >> /tmp/dst/environment.sh && \
|
|
echo "WEBPACK_RUNNER_DEPENDENCIES_MD5=$(cat /tmp/dst/webpack-runner-dependencies.tar.md5 | cut -d' ' -f1)" >> /tmp/dst/environment.sh && \
|
|
echo "WEBPACK_RUNNER_VENDOR_MD5=$(cat /tmp/dst/webpack-runner-vendor.tar.md5 | cut -d' ' -f1)" >> /tmp/dst/environment.sh
|