mirror of
https://github.com/keymanapp/keyman.git
synced 2026-09-29 02:57:41 +00:00
refactor(common): improve downloads include script
- add shebang so that shellcheck knows what shell we use - fix line endings
This commit is contained in:
parent
3477032d2e
commit
bde4db43ae
1 changed files with 54 additions and 50 deletions
|
|
@ -1,50 +1,54 @@
|
|||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
. "${KEYMAN_ROOT}/resources/build/jq.inc.sh"
|
||||
|
||||
#
|
||||
# Write ${UPLOAD_DIR}/${ARTIFACT_FILENAME}.download_info file for the target
|
||||
# artifact
|
||||
#
|
||||
# Parameters:
|
||||
# 1: UPLOAD_DIR Directory where artifact can be found
|
||||
# 2: ARTIFACT_FILENAME Filename (without path) of artifact
|
||||
# 3: ARTIFACT_NAME Descriptive name of artifact
|
||||
# 4: ARTIFACT_TYPE File extension of artifact, without initial period (e.g. tar.gz)
|
||||
# 5: PLATFORM Target platform for artifact
|
||||
#
|
||||
write_download_info() {
|
||||
# TODO: DRY out with Linux download_info writer, others
|
||||
local UPLOAD_DIR="$1"
|
||||
local ARTIFACT_FILENAME="$2"
|
||||
local ARTFIACT_NAME="$3"
|
||||
local ARTIFACT_TYPE="$4"
|
||||
local PLATFORM="$5"
|
||||
|
||||
local DATE HASH SIZE DOWNLOAD_INFO
|
||||
|
||||
# Construct .download_info
|
||||
DATE=$(date +%F)
|
||||
HASH=$(md5sum "${UPLOAD_DIR}/${ARTIFACT_FILENAME}" | cut -d ' ' -f 1)
|
||||
SIZE=$(stat --print="%s" "${UPLOAD_DIR}/${ARTIFACT_FILENAME}")
|
||||
|
||||
DOWNLOAD_INFO=$(
|
||||
"$JQ" -n \
|
||||
--arg NAME "${ARTFIACT_NAME}" \
|
||||
--arg BUILD_NUMBER "${KEYMAN_VERSION}" \
|
||||
--arg DATE "${DATE}" \
|
||||
--arg PLATFORM "${PLATFORM}" \
|
||||
--arg KEYMAN_TIER "${KEYMAN_TIER}" \
|
||||
--arg FILENAME "${ARTIFACT_FILENAME}" \
|
||||
--arg ARTIFACT_TYPE "${ARTIFACT_TYPE}" \
|
||||
--arg HASH "${HASH}" \
|
||||
--arg BUILD_COUNTER "${KEYMAN_VERSION_PATCH}" \
|
||||
--arg SIZE "${SIZE}" \
|
||||
'{
|
||||
name: $NAME, version: $BUILD_NUMBER, date: $DATE, platform: $PLATFORM,
|
||||
stability: $KEYMAN_TIER, file: $FILENAME, md5: $HASH, type: $ARTIFACT_TYPE,
|
||||
build: $BUILD_COUNTER, size: $SIZE
|
||||
}'
|
||||
)
|
||||
echo "${DOWNLOAD_INFO}" | "$JQ" . >> "${UPLOAD_DIR}/${ARTIFACT_FILENAME}.download_info"
|
||||
}
|
||||
#!/usr/bin/env bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
. "${KEYMAN_ROOT}/resources/build/jq.inc.sh"
|
||||
|
||||
#
|
||||
# Write ${UPLOAD_DIR}/${ARTIFACT_FILENAME}.download_info file for the target
|
||||
# artifact
|
||||
#
|
||||
# Parameters:
|
||||
# 1: UPLOAD_DIR Directory where artifact can be found
|
||||
# 2: ARTIFACT_FILENAME Filename (without path) of artifact
|
||||
# 3: ARTIFACT_NAME Descriptive name of artifact
|
||||
# 4: ARTIFACT_TYPE File extension of artifact, without initial period (e.g. tar.gz)
|
||||
# 5: PLATFORM Target platform for artifact
|
||||
#
|
||||
write_download_info() {
|
||||
# TODO: DRY out with Linux download_info writer, others
|
||||
local UPLOAD_DIR="$1"
|
||||
local ARTIFACT_FILENAME="$2"
|
||||
local ARTFIACT_NAME="$3"
|
||||
local ARTIFACT_TYPE="$4"
|
||||
local PLATFORM="$5"
|
||||
|
||||
local DATE HASH SIZE DOWNLOAD_INFO
|
||||
|
||||
# Construct .download_info
|
||||
DATE=$(date +%F)
|
||||
# shellcheck disable=SC2312
|
||||
HASH=$(md5sum "${UPLOAD_DIR}/${ARTIFACT_FILENAME}" | cut -d ' ' -f 1)
|
||||
SIZE=$(stat --print="%s" "${UPLOAD_DIR}/${ARTIFACT_FILENAME}")
|
||||
|
||||
# shellcheck disable=SC2016
|
||||
DOWNLOAD_INFO=$(
|
||||
"${JQ}" -n \
|
||||
--arg NAME "${ARTFIACT_NAME}" \
|
||||
--arg BUILD_NUMBER "${KEYMAN_VERSION}" \
|
||||
--arg DATE "${DATE}" \
|
||||
--arg PLATFORM "${PLATFORM}" \
|
||||
--arg KEYMAN_TIER "${KEYMAN_TIER}" \
|
||||
--arg FILENAME "${ARTIFACT_FILENAME}" \
|
||||
--arg ARTIFACT_TYPE "${ARTIFACT_TYPE}" \
|
||||
--arg HASH "${HASH}" \
|
||||
--arg BUILD_COUNTER "${KEYMAN_VERSION_PATCH}" \
|
||||
--arg SIZE "${SIZE}" \
|
||||
'{
|
||||
name: $NAME, version: $BUILD_NUMBER, date: $DATE, platform: $PLATFORM,
|
||||
stability: $KEYMAN_TIER, file: $FILENAME, md5: $HASH, type: $ARTIFACT_TYPE,
|
||||
build: $BUILD_COUNTER, size: $SIZE
|
||||
}'
|
||||
)
|
||||
echo "${DOWNLOAD_INFO}" | "${JQ}" . >> "${UPLOAD_DIR}/${ARTIFACT_FILENAME}.download_info"
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue