From 092d3d78982216ff689521491c17bb3ea158ac72 Mon Sep 17 00:00:00 2001 From: Felipe Codevilla Date: Wed, 1 May 2019 21:02:47 -0400 Subject: [PATCH 1/2] adding the flag correctly --- PythonAPI/carla/agents/navigation/basic_agent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PythonAPI/carla/agents/navigation/basic_agent.py b/PythonAPI/carla/agents/navigation/basic_agent.py index 71582ea25..fad179c2f 100644 --- a/PythonAPI/carla/agents/navigation/basic_agent.py +++ b/PythonAPI/carla/agents/navigation/basic_agent.py @@ -119,6 +119,6 @@ class BasicAgent(Agent): else: self._state = AgentState.NAVIGATING # standard local planner behavior - control = self._local_planner.run_step() + control = self._local_planner.run_step(debug=debug) return control From b6549adda8bb9f3ad00b296a44a6ef3cfb3754bb Mon Sep 17 00:00:00 2001 From: nsubiron Date: Thu, 2 May 2019 19:58:03 +0200 Subject: [PATCH 2/2] Automate nightly build deployment --- Jenkinsfile | 7 +++ Util/BuildTools/Deploy.sh | 111 ++++++++++++++++++++++++++++++++++ Util/BuildTools/Linux.mk | 3 + Util/BuildTools/Linux.mk.help | 4 ++ Util/BuildTools/Vars.mk | 1 + 5 files changed, 126 insertions(+) create mode 100755 Util/BuildTools/Deploy.sh diff --git a/Jenkinsfile b/Jenkinsfile index 25a35c10c..d23d95b43 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -76,6 +76,13 @@ pipeline { } } } + + stage('Deploy') { + when { anyOf { branch "master"; buildingTag() } } + steps { + sh 'make deploy ARGS="--replace-latest"' + } + } } post { diff --git a/Util/BuildTools/Deploy.sh b/Util/BuildTools/Deploy.sh new file mode 100755 index 000000000..8a85e0c5c --- /dev/null +++ b/Util/BuildTools/Deploy.sh @@ -0,0 +1,111 @@ +#! /bin/bash + +# ============================================================================== +# -- Set up environment -------------------------------------------------------- +# ============================================================================== + +source $(dirname "$0")/Environment.sh + +REPLACE_LATEST=false +AWS_COPY="aws s3 cp" + +# ============================================================================== +# -- Parse arguments ----------------------------------------------------------- +# ============================================================================== + +DOC_STRING="Upload latest build to S3." + +USAGE_STRING="Usage: $0 [-h|--help] [--replace-latest] [--dry-run]" + +OPTS=`getopt -o h --long help,replace-latest,dry-run -n 'parse-options' -- "$@"` + +if [ $? != 0 ] ; then echo "$USAGE_STRING" ; exit 2 ; fi + +eval set -- "$OPTS" + +while true; do + case "$1" in + --replace-latest ) + REPLACE_LATEST=true; + shift ;; + --dry-run ) + AWS_COPY="echo ${AWS_COPY}"; + shift ;; + -h | --help ) + echo "$DOC_STRING" + echo "$USAGE_STRING" + exit 1 + ;; + * ) + break ;; + esac +done + +REPOSITORY_TAG=$(get_git_repository_version) + +LATEST_PACKAGE=CARLA_${REPOSITORY_TAG}.tar.gz +LATEST_PACKAGE_PATH=${CARLA_DIST_FOLDER}/${LATEST_PACKAGE} + +S3_PREFIX=s3://carla-assets-internal/Releases/Linux + +LATEST_DEPLOY_URI=${S3_PREFIX}/Dev/CARLA_Latest.tar.gz + +if [[ ${REPOSITORY_TAG} =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + log "Detected tag ${REPOSITORY_TAG}." + UPLOAD_MAPS=true + DEPLOY_NAME=CARLA_${REPOSITORY_TAG}.tar.gz +else + UPLOAD_MAPS=false + S3_PREFIX=${S3_PREFIX}/Dev + DEPLOY_NAME=$(git log --pretty=format:'%cd_%h' --date=format:'%Y%m%d' -n 1).tar.gz +fi + +log "Using package ${LATEST_PACKAGE} as ${DEPLOY_NAME}." + +if [ ! -f ${LATEST_PACKAGE_PATH} ]; then + fatal_error "Latest package not found, please run 'make package'." +fi + +# ============================================================================== +# -- Upload -------------------------------------------------------------------- +# ============================================================================== + +DEPLOY_URI=${S3_PREFIX}/${DEPLOY_NAME} + +${AWS_COPY} ${LATEST_PACKAGE_PATH} ${DEPLOY_URI} + +log "Latest build uploaded to ${DEPLOY_URI}." + +if ${REPLACE_LATEST} ; then + + ${AWS_COPY} ${DEPLOY_URI} ${LATEST_DEPLOY_URI} + + log "Latest build uploaded to ${LATEST_DEPLOY_URI}." + +fi + +if ${UPLOAD_MAPS} ; then + + mkdir -p ${CARLA_EXPORTED_MAPS_FOLDER} + pushd "${CARLA_EXPORTED_MAPS_FOLDER}" >/dev/null + + for MAP_PACKAGE in *.tar.gz; do + + DEPLOY_MAP_NAME=$(basename "${MAP_PACKAGE}" .tar.gz)_${REPOSITORY_TAG}.tar.gz + DEPLOY_MAP_URI=${S3_PREFIX}/${DEPLOY_MAP_NAME} + + ${AWS_COPY} ${MAP_PACKAGE} ${DEPLOY_MAP_URI} + + log "${MAP_PACKAGE} uploaded to ${DEPLOY_MAP_URI}." + + done + + popd >/dev/null + +fi + +# ============================================================================== +# -- ...and we are done -------------------------------------------------------- +# ============================================================================== + +log "Success!" diff --git a/Util/BuildTools/Linux.mk b/Util/BuildTools/Linux.mk index 2816a70b3..98b6160c5 100644 --- a/Util/BuildTools/Linux.mk +++ b/Util/BuildTools/Linux.mk @@ -106,5 +106,8 @@ LibCarla.client.release: setup setup: @${CARLA_BUILD_TOOLS_FOLDER}/Setup.sh +deploy: + @${CARLA_BUILD_TOOLS_FOLDER}/Deploy.sh $(ARGS) + pretty: @${CARLA_BUILD_TOOLS_FOLDER}/Prettify.sh $(ARGS) diff --git a/Util/BuildTools/Linux.mk.help b/Util/BuildTools/Linux.mk.help index 8a71098db..dbae6d934 100644 --- a/Util/BuildTools/Linux.mk.help +++ b/Util/BuildTools/Linux.mk.help @@ -90,6 +90,10 @@ for developers: Run the setup step only. + deploy: + + Upload nightly build. + pretty: Prettify code files. Run uncrustify on C++ files or AutoPEP8 on Python diff --git a/Util/BuildTools/Vars.mk b/Util/BuildTools/Vars.mk index ab107a55d..acadb5252 100644 --- a/Util/BuildTools/Vars.mk +++ b/Util/BuildTools/Vars.mk @@ -3,6 +3,7 @@ CARLA_ROOT_FOLDER=${CURDIR} CARLA_BUILD_FOLDER=${CURDIR}/Build CARLA_DIST_FOLDER=${CURDIR}/Dist +CARLA_EXPORTED_MAPS_FOLDER=${CURDIR}/ExportedMaps CARLA_BUILD_TOOLS_FOLDER=${CURDIR}/Util/BuildTools CARLA_TEST_RESULTS_FOLDER=${CARLA_BUILD_FOLDER}/test-results