canvas-lms/Dockerfile.jenkins-cache

125 lines
3.3 KiB
Docker

# syntax = starlord.inscloudgate.net/jenkins/dockerfile:1.0-experimental
FROM starlord.inscloudgate.net/jenkins/busybox AS cache-helper-collect-gems
WORKDIR /tmp/src
RUN --mount=target=/tmp/src \
mkdir -p /tmp/dst && \
cp --parents -rf \
config/canvas_rails_switcher.rb \
Gemfile \
Gemfile.d \
\
/tmp/dst && \
find gems \( \
-name "Gemfile" -o \
-name "*.gemspec" -o \
-name "gem_version.rb" -o \
-name "version.rb" \
\) -exec cp --parents -rf {} /tmp/dst \; && \
find gems/plugins \( \
-name "Gemfile.d" \
\) -exec cp --parents -rf {} /tmp/dst \; && \
find engines \( \
-name "Gemfile" -o \
-name "*.gemspec" -o \
-name "gem_version.rb" -o \
-name "version.rb" \
\) -exec cp --parents -rf {} /tmp/dst \; && \
find vendor -type d \( \
-not -name "qti_migration_tool" \
-maxdepth 1 \
-mindepth 1 \
\) -exec cp --parents -rf {} /tmp/dst \;
FROM starlord.inscloudgate.net/jenkins/busybox AS cache-helper-collect-yarn
WORKDIR /tmp/src
RUN --mount=target=/tmp/src \
mkdir -p /tmp/dst && \
cp --parents -rf \
script/fix_inst_esm.js \
package.json \
yarn.lock \
\
/tmp/dst && \
find \
gems/canvas_i18nliner \
gems/plugins/* \
ui/shared/* \
packages/* \
\
-name 'package.json' \
-exec cp --parents {} /tmp/dst \;
FROM starlord.inscloudgate.net/jenkins/busybox AS cache-helper-collect-packages
WORKDIR /tmp/src
RUN --mount=target=/tmp/src \
mkdir -p /tmp/dst && \
cp --parents -rf \
packages \
\
/tmp/dst
FROM starlord.inscloudgate.net/jenkins/busybox AS cache-helper-collect-webpack
WORKDIR /tmp/src
RUN --mount=target=/tmp/src \
mkdir -p /tmp/dst && \
find gems -type d \
-not -path "gems" \
-not -path "gems/plugins" \
-maxdepth 2 \
-path "gems/*/lib" \
-exec cp -rf --parents {} /tmp/dst \; && \
find gems/canvas_i18nliner \
-not -path "gems/canvas_i18nliner" \
-not -path "gems/canvas_i18nliner/spec" \
-not -path "gems/canvas_i18nliner/spec/*" \
-exec cp -rf --parents {} /tmp/dst \; && \
find gems/plugins \( \
-path "*/app/coffeescripts" -o \
-path "*/app/jsx" -o \
-path "*/app/stylesheets" -o \
-path "*/app/views/jst" -o \
-path "*/public" -o \
\) -exec cp -rf --parents {} /tmp/dst \; && \
find gems/config_file \
-not -path "gems/config_file" \
-not -path "gems/config_file/spec" \
-not -path "gems/config_file/spec/*" \
-exec cp -rf --parents {} /tmp/dst \; && \
cp --parents -rf \
app/stylesheets \
bin \
config/environments \
config/locales \
lib/canvas/cdn \
lib/rake \
lib/tasks \
public \
ui \
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/request_cache.rb \
lib/temp_cache.rb \
lib/canvas/cdn.rb \
lib/canvas/reloader.rb \
.i18nignore \
.i18nrc \
Rakefile \
gulpfile.js \
webpack.config.js \
\
/tmp/dst