Skip to content

Commit fd20fc9

Browse files
authored
cf: default API cache TTL to 2 days and allow config (#3107)
1 parent 4085d28 commit fd20fc9

File tree

3 files changed

+24
-41
lines changed

3 files changed

+24
-41
lines changed

Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
5050
--var version=${MC_SERVER_RUNNER_VERSION} --var app=mc-server-runner --file {{.app}} \
5151
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
5252

53-
ARG MC_HELPER_VERSION=1.40.0
53+
ARG MC_HELPER_VERSION=1.40.1
5454
ARG MC_HELPER_BASE_URL=${GITHUB_BASEURL}/itzg/mc-image-helper/releases/download/${MC_HELPER_VERSION}
5555
# used for cache busting local copy of mc-image-helper
5656
ARG MC_HELPER_REV=1
@@ -77,4 +77,4 @@ RUN curl -fsSL -o /image/Log4jPatcher.jar https://github.com/CreeperHost/Log4jPa
7777
RUN dos2unix /start* /auto/*
7878

7979
ENTRYPOINT [ "/start" ]
80-
HEALTHCHECK --start-period=30s --retries=24 --interval=60s CMD mc-health
80+
HEALTHCHECK --start-period=2m --retries=2 --interval=30s CMD mc-health

docs/mods-and-plugins/modrinth.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
|
1010
+-- project slug
1111
```
12-
Also, a specific version (or release type) can be declared adding a colon and then the version id, version name, or release type after the project slug. The version ID can be found in the 'Metadata' section. Valid release types are `release`, `beta`, `alpha`.
12+
Also, a specific version (or release type) can be declared adding a colon and then the version id, version number/name, or release type after the project slug. The version ID or number can be found in the 'Metadata' section. Valid release types are `release`, `beta`, `alpha`.
1313

1414
To select a datapack from a Modrinth project, prefix the entry with "datapack:". When running a vanilla server, this is optional since only datapacks will be available for vanilla servers to select.
1515

scripts/start-deployAutoCF

+21-38
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ set -eu
2020
: "${CF_OVERRIDES_EXCLUSIONS:=}" # --overrides-exclusions
2121
: "${CF_DOWNLOADS_REPO=$([ -d /downloads ] && echo '/downloads' || echo '')}"
2222
: "${CF_MODPACK_MANIFEST:=}"
23+
: "${CF_API_CACHE_DEFAULT_TTL:=}" # as ISO-8601 duration, such as P2D or PT12H
2324

2425
resultsFile=/data/.install-curseforge.env
2526

@@ -29,49 +30,31 @@ ensureRemoveAllModsOff "MOD_PLATFORM=AUTO_CURSEFORGE"
2930

3031
args=(
3132
--results-file="$resultsFile"
32-
)
33-
if [[ $CF_PAGE_URL ]]; then
34-
args+=(--modpack-page-url="$CF_PAGE_URL")
35-
fi
36-
if [[ $CF_FILE_ID ]]; then
37-
args+=(--file-id="$CF_FILE_ID")
38-
fi
39-
if [[ $CF_SLUG ]]; then
40-
args+=(--slug="$CF_SLUG")
41-
fi
42-
if [[ $CF_MODPACK_MANIFEST ]]; then
43-
args+=(--modpack-manifest="$CF_MODPACK_MANIFEST")
44-
fi
45-
if [[ $CF_FILENAME_MATCHER ]]; then
46-
args+=(--filename-matcher="$CF_FILENAME_MATCHER")
47-
fi
48-
if [[ ${CF_SET_LEVEL_FROM} ]]; then
49-
args+=(--set-level-from="$CF_SET_LEVEL_FROM")
50-
fi
51-
if [[ ${CF_OVERRIDES_EXCLUSIONS} ]]; then
52-
args+=(--overrides-exclusions="$CF_OVERRIDES_EXCLUSIONS")
53-
fi
54-
if [[ ${CF_IGNORE_MISSING_FILES} ]]; then
55-
args+=(--ignore-missing-files="$CF_IGNORE_MISSING_FILES")
56-
fi
57-
args+=(
5833
--force-synchronize="$CF_FORCE_SYNCHRONIZE"
5934
--force-reinstall-modloader="$CF_FORCE_REINSTALL_MODLOADER"
6035
--overrides-skip-existing="$CF_OVERRIDES_SKIP_EXISTING"
6136
)
37+
setArg() {
38+
arg="${1?}"
39+
var="${2?}"
6240

63-
if [[ $CF_EXCLUDE_MODS ]]; then
64-
args+=( --exclude-mods="$CF_EXCLUDE_MODS" )
65-
fi
66-
if [[ $CF_FORCE_INCLUDE_MODS ]]; then
67-
args+=( --force-include-mods="$CF_FORCE_INCLUDE_MODS" )
68-
fi
69-
if [[ $CF_EXCLUDE_INCLUDE_FILE ]]; then
70-
args+=( --exclude-include-file="$CF_EXCLUDE_INCLUDE_FILE" )
71-
fi
72-
if [[ $CF_DOWNLOADS_REPO ]]; then
73-
args+=( --downloads-repo="$CF_DOWNLOADS_REPO" )
74-
fi
41+
if [[ ${!var} ]]; then
42+
args+=("${arg}=${!var}")
43+
fi
44+
}
45+
setArg --modpack-page-url CF_PAGE_URL
46+
setArg --file-id CF_FILE_ID
47+
setArg --slug CF_SLUG
48+
setArg --modpack-manifest CF_MODPACK_MANIFEST
49+
setArg --filename-matcher CF_FILENAME_MATCHER
50+
setArg --set-level-from CF_SET_LEVEL_FROM
51+
setArg --overrides-exclusions CF_OVERRIDES_EXCLUSIONS
52+
setArg --ignore-missing-files CF_IGNORE_MISSING_FILES
53+
setArg --api-cache-default-ttl CF_API_CACHE_DEFAULT_TTL
54+
setArg --exclude-mods CF_EXCLUDE_MODS
55+
setArg --force-include-mods CF_FORCE_INCLUDE_MODS
56+
setArg --exclude-include-file CF_EXCLUDE_INCLUDE_FILE
57+
setArg --downloads-repo CF_DOWNLOADS_REPO
7558

7659
if ! mc-image-helper install-curseforge "${args[@]}"; then
7760
log "ERROR failed to auto-install CurseForge modpack"

0 commit comments

Comments
 (0)