mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-09 05:56:58 +02:00
The google domain name is still used for downloads, that will be switched as soon as the appropriate certificates are set up.
63 lines
2.0 KiB
Bash
Executable File
63 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Copyright (c) 2013 The CoreOS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
SCRIPT_ROOT=$(dirname $(readlink -f "$0"))
|
|
# We have to simple-mindedly set GCLIENT_ROOT in case we're running from
|
|
# au-generator.zip because common.sh will fail while auto-detect it.
|
|
export GCLIENT_ROOT=$(readlink -f "${SCRIPT_ROOT}/../../")
|
|
. "${SCRIPT_ROOT}/common.sh" || exit 1
|
|
|
|
DEFINE_string board "amd64-usr" \
|
|
"Board type of the image"
|
|
DEFINE_string payload "coreos_production_update.gz" \
|
|
"Path to the update payload"
|
|
DEFINE_string version "${COREOS_VERSION}" \
|
|
"Version number of this build."
|
|
DEFINE_string app_id "e96281a6-d1af-4bde-9a0a-97b76e56dc57" \
|
|
"CoreOS AppId in roller."
|
|
|
|
DEFINE_string user "" \
|
|
"User for roller."
|
|
DEFINE_string api_key "" \
|
|
"API key for roller."
|
|
DEFINE_string endpoint "https://public.update.core-os.net" \
|
|
"Roller endpoint to update."
|
|
DEFINE_string storage "gs://coreos-update" \
|
|
"Google Storage location to host the payload."
|
|
|
|
FLAGS_HELPS="usage: $SCRIPTNAME [flags]
|
|
|
|
Setting everything up for use\n
|
|
|
|
1) Run 'gsutil config' and use project id coreos.com:core-update-storage\n
|
|
2) Ensure rollerctl is installed in your path\n
|
|
"
|
|
|
|
# Parse flags
|
|
FLAGS "$@" || exit 1
|
|
eval set -- "${FLAGS_ARGV}"
|
|
switch_to_strict_mode
|
|
|
|
[[ -z "${FLAGS_api_key}" ]] && die "--api_key is required"
|
|
[[ -z "${FLAGS_user}" ]] && die "--user is required"
|
|
|
|
# Ensure GS URL doesn't have a trailing /
|
|
FLAGS_storage="${FLAGS_storage%%/}"
|
|
|
|
GS_URL="${FLAGS_storage}/${FLAGS_board}/${FLAGS_version}/update.gz"
|
|
HTTP_URL="https://commondatastorage.googleapis.com/${GS_URL#gs://}"
|
|
gsutil cp "${FLAGS_payload}" "${GS_URL}"
|
|
|
|
updateservicectl \
|
|
--server="${FLAGS_endpoint}" \
|
|
--user="${FLAGS_user}" \
|
|
--key="${FLAGS_api_key}" \
|
|
package create \
|
|
--app-id="${FLAGS_app_id}" \
|
|
--file="${FLAGS_payload}" \
|
|
--url="${HTTP_URL}" \
|
|
--version="${FLAGS_version}"
|