1*2764adbbSAndroid Build Coastguard Worker#!/bin/bash 2*2764adbbSAndroid Build Coastguard Worker# 3*2764adbbSAndroid Build Coastguard Worker# Script to invoke copybara to generate an 'IMPORT:' change for linux-firmware. 4*2764adbbSAndroid Build Coastguard Worker# 5*2764adbbSAndroid Build Coastguard Worker# Copyright (C) 2024 The Android Open Source Project 6*2764adbbSAndroid Build Coastguard Worker# 7*2764adbbSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 8*2764adbbSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 9*2764adbbSAndroid Build Coastguard Worker# You may obtain a copy of the License at 10*2764adbbSAndroid Build Coastguard Worker# 11*2764adbbSAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 12*2764adbbSAndroid Build Coastguard Worker# 13*2764adbbSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 14*2764adbbSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 15*2764adbbSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16*2764adbbSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 17*2764adbbSAndroid Build Coastguard Worker# limitations under the License. 18*2764adbbSAndroid Build Coastguard Worker 19*2764adbbSAndroid Build Coastguard Workerset -e 20*2764adbbSAndroid Build Coastguard Worker 21*2764adbbSAndroid Build Coastguard Workerdie () { 22*2764adbbSAndroid Build Coastguard Worker >&2 echo "$1" 23*2764adbbSAndroid Build Coastguard Worker exit 1 24*2764adbbSAndroid Build Coastguard Worker} 25*2764adbbSAndroid Build Coastguard Worker 26*2764adbbSAndroid Build Coastguard Workerfw_name="$1" 27*2764adbbSAndroid Build Coastguard Workerif [[ -z "${fw_name}" ]]; then 28*2764adbbSAndroid Build Coastguard Worker die "Usage: $0 [fw_name]" 29*2764adbbSAndroid Build Coastguard Workerfi 30*2764adbbSAndroid Build Coastguard Worker 31*2764adbbSAndroid Build Coastguard Worker# Save the name of the current branch so we can get back to it. 32*2764adbbSAndroid Build Coastguard Workercopybara_branch="$(git branch --show-current)" 33*2764adbbSAndroid Build Coastguard Workerif [[ -z "${copybara_branch}" ]]; then 34*2764adbbSAndroid Build Coastguard Worker die "You must be on a branch before running" 35*2764adbbSAndroid Build Coastguard Workerfi 36*2764adbbSAndroid Build Coastguard Worker 37*2764adbbSAndroid Build Coastguard Worker# If something fails go back to the branch we were on. 38*2764adbbSAndroid Build Coastguard Workertrap "git checkout '${copybara_branch}'" EXIT 39*2764adbbSAndroid Build Coastguard Worker 40*2764adbbSAndroid Build Coastguard Worker# We're going to tell copybara to "push" to our branch. That fails 41*2764adbbSAndroid Build Coastguard Worker# if it's already checked out, so checkout the same location but 42*2764adbbSAndroid Build Coastguard Worker# without a branch name 43*2764adbbSAndroid Build Coastguard Workergit checkout --detach 44*2764adbbSAndroid Build Coastguard Worker 45*2764adbbSAndroid Build Coastguard Worker# Run copybara 46*2764adbbSAndroid Build Coastguard Workercopybara --force migrate copy.bara.sky \ 47*2764adbbSAndroid Build Coastguard Worker --git-destination-url="$(dirname "$(readlink -f "$0")")" \ 48*2764adbbSAndroid Build Coastguard Worker --git-destination-push="${copybara_branch}" \ 49*2764adbbSAndroid Build Coastguard Worker "${fw_name}" 50*2764adbbSAndroid Build Coastguard Worker 51*2764adbbSAndroid Build Coastguard Workergit checkout "${copybara_branch}" 52*2764adbbSAndroid Build Coastguard Worker 53*2764adbbSAndroid Build Coastguard Worker# Get a Change-Id added. 54*2764adbbSAndroid Build Coastguard Workergit commit --amend --no-edit 55