| #!/bin/bash |
| |
| BUCK_LOCAL_CONFIG=${BUCK_LOCAL_CONFIG:-$ONOS_ROOT/.buckconfig.local} |
| MVN_REPO="https://oss.sonatype.org/content/repositories/snapshots" |
| NO_BUCKD=1 |
| |
| set -e |
| set -x |
| |
| #FIXME if pwd != buck |
| pushd buck |
| |
| # build buck |
| scripts/create_tag.sh |
| buck build buck --show-output |
| |
| # publish cli:main-fixed as buck-api |
| cp $BUCK_LOCAL_CONFIG . |
| buck publish //src/com/facebook/buck/cli:main-fixed \ |
| --remote-repo=https://oss.sonatype.org/content/repositories/snapshots/ \ |
| | tee ../api-publish.txt |
| |
| # Alternatively, we can deploy org.onosproject:buck-api with the following: |
| #mvn deploy:deploy-file -DgroupId=org.onosproject -DartifactId=buck-api \ |
| # -Dversion=0.1-SNAPSHOT -DgeneratePom=true -Dpackaging=jar \ |
| # -DrepositoryId=snapshot -Durl=https://oss.sonatype.org/content/repositories/snapshots/ \ |
| # -Dfile=buck-out/gen/src/com/facebook/buck/cli/main-fixed/main-fixed.jar |
| |
| #FIXME upload API to S3 for backup |
| |
| popd #buck |
| |
| SNAPSHOT_VERSION=$(cat api-publish.txt | grep "^org.onosproject:buck-api:jar" \ |
| | cut -d' ' -f1 | cut -d: -f4) |
| BUCK_API_URL="$MVN_REPO/org/onosproject/buck-api/0.1-SNAPSHOT/buck-api-$SNAPSHOT_VERSION.jar" |
| echo $BUCK_API_URL |
| |
| BUCK_API_SHA=$(shasum buck/buck-out/gen/src/com/facebook/buck/cli/main-fixed/main-fixed.jar | cut -d' ' -f1) |
| echo $BUCK_API_SHA |
| |
| pushd onos |
| sed -i "" -E "s#url =.*#url = '$BUCK_API_URL',#" tools/build/buck-plugin/BUCK |
| sed -i "" -E "s#sha1 =.*#sha1 = '$BUCK_API_SHA',#" tools/build/buck-plugin/BUCK |
| popd #onos |
| |
| #pushd onos-yang-tools |
| #FIXME update version (assume 0.1-SNAPSHOT for now) |
| #popd #onos-yang-tools |
| |
| set +x |
| |
| echo |
| echo "Please build and verify the ONOS Buck plugin and the Yang tools plugin:" |
| echo " cd onos; buck build //tools/build/buck-plugin:onos" |
| echo " cd onos-yang-tools; mvn clean package" |
| echo "You should commit and push any required changes." |