blob: 196bd32ec9d88b3eb88050645ab88cd50f336580 [file] [log] [blame]
Kelvin Zhangd64c8832022-04-02 19:56:24 +08001#!/bin/bash
2#
3# Copyright (c) 2021-2022 Amlogic, Inc. All rights reserved.
4#
5# SPDX-License-Identifier: MIT
6#
7
8LOCAL_DOC_PATH="$PWD/output/docs/html"
9REMOTE_DOC_PATH="ftp://platform:platform@10.68.11.163:2222/Documents/Ecosystem/RTOS/rtos-sdk/"
10
11# Build and upload document
12publish_docoment() {
13 find -type f | while read filename; do
14 curl -s --ftp-create-dirs -T $filename $REMOTE_DOC_PATH/$filename
15 if [ $? -ne 0 ]; then
16 return 1
17 fi
18 done
19}
20
Kelvin Zhangd64c8832022-04-02 19:56:24 +080021LOCAL_OUTPUT_PATH=output
Kelvin Zhangaa84d882022-04-22 13:38:46 +080022LOCAL_PACKAGES_PATH=$LOCAL_OUTPUT_PATH/packages
Kelvin Zhang22cb55e2022-06-08 20:21:00 +080023
24BUILD_DATE=$(date +%F)
25LATEST_REMOTE_PATH=/data/shanghai/image/RTOS/latest
26REMOTE_PATH=/data/shanghai/image/RTOS/$BUILD_DATE
27REMOTE_IMAGES_PATH=$REMOTE_PATH/images
28REMOTE_PACKAGES_PATH=$REMOTE_PATH/packages
29
Kelvin Zhangd64c8832022-04-02 19:56:24 +080030FIRMWARE_ACCOUNT=autobuild
31FIRMWARE_SERVER=firmware.amlogic.com
32
bin.chen1ae21872022-07-27 15:11:21 +080033make_image() {
34 mkimage -A $ARCH -O u-boot -T standalone -C none -a 0x1000 -e 0x1000 -n rtos -d output/$ARCH-$BOARD-$PRODUCT/images/freertos-signed.bin output/$ARCH-$BOARD-$PRODUCT/images/rtos-uImage
35}
36
Kelvin Zhangaa84d882022-04-22 13:38:46 +080037publish_images() {
Kelvin Zhangd64c8832022-04-02 19:56:24 +080038 LOCAL_IMAGE_PATH=$LOCAL_OUTPUT_PATH/$ARCH-$BOARD-$PRODUCT
Kelvin Zhangaa84d882022-04-22 13:38:46 +080039 REMOTE_IMAGE_PATH=$REMOTE_IMAGES_PATH/$ARCH-$BOARD-$PRODUCT
Kelvin Zhangd64c8832022-04-02 19:56:24 +080040
41 if [ -d $LOCAL_IMAGE_PATH ]; then
42 ssh -n $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER "mkdir -p $REMOTE_IMAGE_PATH"
43 if [ $? -ne 0 ]; then
44 echo "Failed to create remote image path! $REMOTE_IMAGE_PATH"
45 exit 1
46 else
47 echo "Remote image path: $REMOTE_IMAGE_PATH"
48 fi
Kelvin Zhangd64c8832022-04-02 19:56:24 +080049 pushd $LOCAL_IMAGE_PATH >/dev/null
50 tar -cJf $KERNEL.tar.xz $KERNEL/$KERNEL.*
Kelvin Zhangf19f3e02022-04-19 18:12:24 +080051 scp $KERNEL.tar.xz $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER:$REMOTE_IMAGE_PATH
Kelvin Zhangaa84d882022-04-22 13:38:46 +080052 scp images/* $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER:$REMOTE_IMAGE_PATH
Kelvin Zhangd64c8832022-04-02 19:56:24 +080053 popd >/dev/null
54 echo "Publish images success."
55 else
56 echo "No local image path! $LOCAL_IMAGE_PATH"
57 fi
58}
59
Kelvin Zhangaa84d882022-04-22 13:38:46 +080060post_publish_images() {
61 ssh -n $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER "mkdir -p $REMOTE_IMAGES_PATH"
62 if [ $? -ne 0 ]; then
63 echo "Failed to create remote image path! $REMOTE_IMAGES_PATH"
64 exit 1
65 else
66 echo "Remote image path: $REMOTE_IMAGES_PATH"
67 fi
68 LOCAL_FILES="$LOCAL_OUTPUT_PATH/build.log $LOCAL_OUTPUT_PATH/manifest.xml"
Kelvin Zhang8b78b332022-06-09 13:33:43 +080069 [ -f $LOCAL_OUTPUT_PATH/gerrit_trigger.txt ] && LOCAL_FILES+=" $LOCAL_OUTPUT_PATH/jenkins_trigger.txt"
Kelvin Zhangaa84d882022-04-22 13:38:46 +080070 scp $LOCAL_FILES $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER:$REMOTE_IMAGES_PATH
Kelvin Zhang22cb55e2022-06-08 20:21:00 +080071
72 ssh -n $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER "rm -f $LATEST_REMOTE_PATH"
73 ssh -n $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER "ln -s $REMOTE_PATH $LATEST_REMOTE_PATH"
Kelvin Zhangaa84d882022-04-22 13:38:46 +080074 echo "Post publish images done."
75}
Kelvin Zhangd64c8832022-04-02 19:56:24 +080076
Kelvin Zhangaa84d882022-04-22 13:38:46 +080077publish_packages() {
shijie.xiong69cbf042022-04-22 13:32:39 +080078 LOCAL_PACKAGE_PATH=$LOCAL_PACKAGES_PATH/$CURRENT_PRODUCTS_DIR_NAME
79 REMOTE_PACKAGE_PATH=$REMOTE_PACKAGES_PATH/$CURRENT_PRODUCTS_DIR_NAME
80
Kelvin Zhangd64c8832022-04-02 19:56:24 +080081 if [ -d $LOCAL_PACKAGE_PATH ]; then
82 ssh -n $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER "mkdir -p $REMOTE_PACKAGE_PATH"
83 if [ $? -ne 0 ]; then
84 echo "Failed to create remote package path! $REMOTE_PACKAGE_PATH"
85 exit 1
86 else
87 echo "Remote package path: $REMOTE_PACKAGE_PATH"
88 fi
Kelvin Zhangd64c8832022-04-02 19:56:24 +080089 pushd $LOCAL_PACKAGE_PATH >/dev/null
90 scp -r . $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER:$REMOTE_PACKAGE_PATH
91 popd >/dev/null
92 echo "Publish packages success."
93 else
94 echo "No local package path! $LOCAL_PACKAGE_PATH"
95 fi
96}
Kelvin Zhangaa84d882022-04-22 13:38:46 +080097
98post_publish_packages() {
99 ssh -n $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER "mkdir -p $REMOTE_PACKAGES_PATH"
100 if [ $? -ne 0 ]; then
101 echo "Failed to create remote package path! $REMOTE_PACKAGES_PATH"
102 exit 1
103 else
104 echo "Remote package path: $REMOTE_PACKAGES_PATH"
105 fi
106 LOCAL_FILES="$LOCAL_OUTPUT_PATH/build.log $LOCAL_OUTPUT_PATH/manifest.xml"
107 scp $LOCAL_FILES $FIRMWARE_ACCOUNT@$FIRMWARE_SERVER:$REMOTE_PACKAGES_PATH
108 echo "Post publish packages done."
109}