http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/Vagrantfile ---------------------------------------------------------------------- diff --git a/release/Vagrantfile b/release/Vagrantfile deleted file mode 100644 index 016c48f..0000000 --- a/release/Vagrantfile +++ /dev/null @@ -1,66 +0,0 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# Vagrantfile that creates a basic workstation for compiling Brooklyn and -# running tests. Particularly useful for running integration tests, as you -# can clean up any failed tests simply by destroying and rebuilding the -# Vagrant instance. - -# All Vagrant configuration is done below. The "2" in Vagrant.configure -# configures the configuration version (we support older styles for -# backwards compatibility). Please don't change it unless you know what -# you're doing. -Vagrant.configure(2) do |config| - - # Base on Ubuntu 14.04 LTS - config.vm.box = "ubuntu/trusty64" - - # Provider-specific configuration so you can fine-tune various - # backing providers for Vagrant. These expose provider-specific options. - config.vm.provider "virtualbox" do |vb| - vb.memory = "2048" - end - - config.vm.network "forwarded_port", guest: 8008, host: 8008 - - config.vm.provision "file", source: "~/.gitconfig", destination: ".gitconfig" - config.vm.provision "file", source: "~/.gnupg/gpg.conf", destination: ".gnupg/gpg.conf" - config.vm.provision "file", source: "~/.gnupg/pubring.gpg", destination: ".gnupg/pubring.gpg" - config.vm.provision "file", source: "~/.gnupg/secring.gpg", destination: ".gnupg/secring.gpg" - config.vm.provision "file", source: "gpg-agent.conf", destination: ".gnupg/gpg-agent.conf" - config.vm.provision "file", source: "settings.xml", destination: ".m2/settings.xml" - - # Update the VM, install Java and Maven, enable passwordless-ssh-to-localhost, - # clone the canonical repository - config.vm.provision "shell", inline: <<-SHELL - apt-get update - apt-get upgrade -y - apt-get install -y default-jdk maven git xmlstarlet zip unzip language-pack-en vim-nox gnupg2 gnupg-agent pinentry-curses - wget -q -O /tmp/artifactory.zip http://bit.ly/Hqv9aj - mkdir -p /opt - unzip /tmp/artifactory.zip -d /opt - sudo sed -i -e '/Connector port=/ s/=\".*\"/=\"'"8008"'\"/' /opt/artifactory*/tomcat/conf/server.xml - /opt/artifactory*/bin/installService.sh - service artifactory start - chmod -R go= ~vagrant/.gnupg - cat /etc/ssh/ssh_host_*_key.pub | awk '{print "localhost,127.0.0.1 "$0}' >> /etc/ssh/ssh_known_hosts - su -c 'ssh-keygen -t rsa -b 2048 -N "" -f ~/.ssh/id_rsa; cat ~/.ssh/*.pub >> ~/.ssh/authorized_keys' vagrant - su -c 'git clone https://git-wip-us.apache.org/repos/asf/incubator-brooklyn.git apache-brooklyn-git' vagrant - SHELL -end
http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/change-version.sh ---------------------------------------------------------------------- diff --git a/release/change-version.sh b/release/change-version.sh deleted file mode 100755 index 280c245..0000000 --- a/release/change-version.sh +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/env bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -set -e - -# changes the version everywhere -# usage, e.g.: change-version.sh 0.3.0-SNAPSHOT 0.3.0-RC1 -# or: change-version.sh MARKER 0.3.0-SNAPSHOT 0.3.0-RC1 - -[ -d .git ] || { - echo "Must run in brooklyn project root directory" - exit 1 -} - -if [ "$#" -eq 2 ]; then - VERSION_MARKER=BROOKLYN_VERSION -elif [ "$#" -eq 3 ]; then - VERSION_MARKER=$1_VERSION - shift; -else - echo "Usage: "$0" [VERSION_MARKER] CURRENT_VERSION NEW_VERSION" - echo " e.g.: "$0" BROOKLYN 0.3.0-SNAPSHOT 0.3.0-RC1" - exit 1 -fi - -# remove binaries and stuff -if [ -f pom.xml ] && [ -d target ] ; then mvn clean ; fi - -VERSION_MARKER_NL=${VERSION_MARKER}_BELOW -CURRENT_VERSION=$1 -NEW_VERSION=$2 - -# grep --exclude-dir working only in recent versions, not on all platforms, replace with find; -# skip folders named "ignored" or .xxx (but not the current folder "."); -# exclude log, war, etc. files; -# use null delimiters so files containing spaces are supported; -#Â pass /dev/null as the first file to search in, so the command doesn't fail if find doesn't match any files; -# add || true for the case where grep doesn't have matches, so the script doesn't halt -# If there's an error "Argument list too long" add -n20 to xargs arguments and loop over $FILE around sed -FILES=`find . -type d \( -name ignored -or -name .?\* \) -prune \ - -o -type f -not \( -name \*.log -or -name '*.war' -or -name '*.min.js' -or -name '*.min.css' \) -print0 | \ - xargs -0 grep -l "${VERSION_MARKER}\|${VERSION_MARKER_NL}" /dev/null || true` - -FILES_COUNT=`echo $FILES | wc | awk '{print $2}'` - -if [ ${FILES_COUNT} -ne 0 ]; then - # search for files containing version markers - sed -i.bak -e "/${VERSION_MARKER}/s/${CURRENT_VERSION}/${NEW_VERSION}/g" $FILES - sed -i.bak -e "/${VERSION_MARKER_NL}/{n;s/${CURRENT_VERSION}/${NEW_VERSION}/g;}" $FILES -fi - -echo "Changed ${CURRENT_VERSION} to ${NEW_VERSION} for "${FILES_COUNT}" files" -echo "(Do a \`find . -name \"*.bak\" -delete\` to delete the backup files.)" http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/gpg-agent.conf ---------------------------------------------------------------------- diff --git a/release/gpg-agent.conf b/release/gpg-agent.conf deleted file mode 100644 index 3cd0291..0000000 --- a/release/gpg-agent.conf +++ /dev/null @@ -1,2 +0,0 @@ -default-cache-ttl 7200 -max-cache-ttl 86400 http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/make-release-artifacts.sh ---------------------------------------------------------------------- diff --git a/release/make-release-artifacts.sh b/release/make-release-artifacts.sh deleted file mode 100755 index 476a6e3..0000000 --- a/release/make-release-artifacts.sh +++ /dev/null @@ -1,257 +0,0 @@ -#!/bin/bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -# creates a source release - this is a .tar.gz file containing all the source code files that are permitted to be released. - -set -e - -############################################################################### -fail() { - echo >&2 "$@" - exit 1 -} - -############################################################################### -show_help() { - cat >&2 <<END -Usage: make-release-artifacts.sh [-v version] [-r rc_number] -Prepares and builds the source and binary distribution artifacts of a Brooklyn -release. - - -vVERSION overrides the name of this version, if detection - from pom.xml is not accurate for any reason. - -rRC_NUMBER specifies the release candidate number. The - produced artifact names include the 'rc' suffix, - but the contents of the archive artifact do *not* - include the suffix. Therefore, turning a release - candidate into a release requires only renaming - the artifacts. - -y answers "y" to all questions automatically, to - use defaults and make this suitable for batch mode - -Specifying the RC number is required. Specifying the version number is -discouraged; if auto detection is not working, then this script is buggy. - -Additionally if APACHE_DIST_SVN_DIR is set, this will transfer artifacts to -that directory and svn commit them. -END -# ruler -------------------------------------------------- -} - -############################################################################### -confirm() { - # call with a prompt string or use a default - if [ "${batch_confirm_y}" == "true" ] ; then - true - else - read -r -p "${1:-Are you sure? [y/N]} " response - case $response in - [yY][eE][sS]|[yY]) - true - ;; - *) - false - ;; - esac - fi -} - -############################################################################### -detect_version() { - if [ \! -z "${current_version}" ]; then - return - fi - - set +e - current_version=$( xmlstarlet select -t -v '/_:project/_:version/text()' pom.xml 2>/dev/null ) - success=$? - set -e - if [ "${success}" -ne 0 -o -z "${current_version}" ]; then - fail Could not detect version number - fi -} - -############################################################################### -# Argument parsing -rc_suffix= -OPTIND=1 -while getopts "h?v:r:y?" opt; do - case "$opt" in - h|\?) - show_help - exit 0 - ;; - v) - current_version=$OPTARG - ;; - r) - rc_suffix=$OPTARG - ;; - y) - batch_confirm_y=true - ;; - *) - show_help - exit 1 - esac -done - -shift $((OPTIND-1)) -[ "$1" = "--" ] && shift - -############################################################################### -# Prerequisite checks -[ -d .git ] || fail Must run in brooklyn project root directory - -detect_version - -############################################################################### -# Determine all filenames and paths, and confirm - -release_name=apache-brooklyn-${current_version} -if [ -z "$rc_suffix" ]; then - fail Specifying the RC number is required -else - artifact_name=${release_name}-rc${rc_suffix} -fi - -release_script_dir=$( cd $( dirname $0 ) && pwd ) -brooklyn_dir=$( pwd ) -rm -rf ${release_script_dir}/tmp -staging_dir="${release_script_dir}/tmp/source/" -src_staging_dir="${release_script_dir}/tmp/source/${release_name}-src" -bin_staging_dir="${release_script_dir}/tmp/bin/" -artifact_dir="${release_script_dir}/tmp/${artifact_name}" - -echo "The version is ${current_version}" -echo "The rc suffix is rc${rc_suffix}" -echo "The release name is ${release_name}" -echo "The artifact name is ${artifact_name}" -echo "The artifact directory is ${artifact_dir}" -if [ ! -z "${APACHE_DIST_SVN_DIR}" ] ; then - echo "The artifacts will be copied and uploaded via ${APACHE_DIST_SVN_DIR}" -else - echo "The artifacts will not be copied and uploaded to the svn repo" -fi -echo "" -confirm "Is this information correct? [y/N]" || exit -echo "" -echo "WARNING! This script will run 'git clean -dxf' to remove ALL files that are not under Git source control." -echo "This includes build artifacts and all uncommitted local files and directories." -echo "If you want to check what will happen, answer no and run 'git clean -dxn' to dry run." -echo "" -confirm || exit -echo "" -echo "This script will cause uploads to be made to a staging repository on the Apache Nexus server." -echo "" -confirm "Shall I continue? [y/N]" || exit - -############################################################################### -# Clean the workspace -git clean -dxf - -############################################################################### -# Source release -echo "Creating source release folder ${release_name}" -set -x -mkdir -p ${src_staging_dir} -mkdir -p ${bin_staging_dir} -# exclude: -# * docs (which isn't part of the release, and adding license headers to js files is cumbersome) -# * sandbox (which hasn't been vetted so thoroughly) -# * release (where this is running, and people who *have* the release don't need to make it) -# * jars and friends (these are sometimes included for tests, but those are marked as skippable, -# and apache convention does not allow them in source builds; see PR #365 -rsync -rtp --exclude .git\* --exclude docs/ --exclude sandbox/ --exclude release/ --exclude '**/*.[ejw]ar' . ${staging_dir}/${release_name}-src - -rm -rf ${artifact_dir} -mkdir -p ${artifact_dir} -set +x -echo "Creating artifact ${artifact_dir}/${artifact_name}-src.tar.gz and .zip" -set -x -( cd ${staging_dir} && tar czf ${artifact_dir}/${artifact_name}-src.tar.gz ${release_name}-src ) -( cd ${staging_dir} && zip -qr ${artifact_dir}/${artifact_name}-src.zip ${release_name}-src ) - -############################################################################### -# Binary release -set +x -echo "Proceeding to build binary release" -set -x - -# Set up GPG agent -if ps x | grep [g]pg-agent ; then - echo "gpg-agent already running; assuming it is set up and exported correctly." -else - eval $(gpg-agent --daemon --no-grab --write-env-file $HOME/.gpg-agent-info) - GPG_TTY=$(tty) - export GPG_TTY GPG_AGENT_INFO -fi - -# Workaround for bug BROOKLYN-1 -( cd ${src_staging_dir} && mvn clean --projects :brooklyn-archetype-quickstart ) - -# Perform the build and deploy to Nexus staging repository -( cd ${src_staging_dir} && mvn deploy -Papache-release ) -## To test the script without a big deploy, use the line below instead of above -#( cd ${src_staging_dir} && cd usage/dist && mvn clean install ) - -# Re-pack the archive with the correct names -tar xzf ${src_staging_dir}/usage/dist/target/brooklyn-dist-${current_version}-dist.tar.gz -C ${bin_staging_dir} -mv ${bin_staging_dir}/brooklyn-dist-${current_version} ${bin_staging_dir}/${release_name}-bin - -( cd ${bin_staging_dir} && tar czf ${artifact_dir}/${artifact_name}-bin.tar.gz ${release_name}-bin ) -( cd ${bin_staging_dir} && zip -qr ${artifact_dir}/${artifact_name}-bin.zip ${release_name}-bin ) - -############################################################################### -# Signatures and checksums - -# OSX doesn't have sha256sum, even if MacPorts md5sha1sum package is installed. -# Easy to fake it though. -which sha256sum >/dev/null || alias sha256sum='shasum -a 256' && shopt -s expand_aliases - -( cd ${artifact_dir} && - for a in *.tar.gz *.zip; do - md5sum -b ${a} > ${a}.md5 - sha1sum -b ${a} > ${a}.sha1 - sha256sum -b ${a} > ${a}.sha256 - gpg2 --armor --output ${a}.asc --detach-sig ${a} - done -) - -############################################################################### - -if [ ! -z "${APACHE_DIST_SVN_DIR}" ] ; then - pushd ${APACHE_DIST_SVN_DIR} - rm -rf ${artifact_name} - cp -r ${artifact_dir} ${artifact_name} - svn add ${artifact_name} - svn commit --message "Add ${artifact_name} artifacts for incubator/brooklyn" - artifact_dir=${APACHE_DIST_SVN_DIR}/${artifact_name} - popd -fi - -############################################################################### -# Conclusion - -set +x -echo "The release is done - here is what has been created:" -ls ${artifact_dir} -echo "You can find these files in: ${artifact_dir}" -echo "The git commit ID for the voting emails is: $( git rev-parse HEAD )" http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/print-vote-email.sh ---------------------------------------------------------------------- diff --git a/release/print-vote-email.sh b/release/print-vote-email.sh deleted file mode 100755 index 5fd2256..0000000 --- a/release/print-vote-email.sh +++ /dev/null @@ -1,130 +0,0 @@ -#!/bin/bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -# prints a sample email with all the correct information - -set +x - -fail() { - echo >&2 "$@" - exit 1 -} - -if [ -z "${VERSION_NAME}" ] ; then fail VERSION_NAME must be set ; fi -if [ -z "${RC_NUMBER}" ] ; then fail RC_NUMBER must be set ; fi - -base=apache-brooklyn-${VERSION_NAME}-rc${RC_NUMBER} - -if [ -z "$1" ] ; then fail "A single argument being the staging repo ID must be supplied, e.g. orgapachebrooklyn-1234" ; fi - -staging_repo_id=$1 -archetype_check=`curl https://repository.apache.org/content/repositories/${staging_repo_id}/archetype-catalog.xml 2> /dev/null` -if ! echo $archetype_check | grep brooklyn-archetype-quickstart > /dev/null ; then - fail staging repo looks wrong at https://repository.apache.org/content/repositories/${staging_repo_id} -fi -if ! echo $archetype_check | grep ${VERSION_NAME} > /dev/null ; then - fail wrong version at https://repository.apache.org/content/repositories/${staging_repo_id} -fi - -artifact=release/tmp/${base}/${base}-bin.tar.gz -if [ ! -f $artifact ] ; then - fail could not find artifact $artifact -fi -if [ -z "$APACHE_ID" ] ; then - APACHE_ID=`gpg2 --verify ${artifact}.asc ${artifact} 2>&1 | egrep -o '[^<]*@apache.org>' | cut -d @ -f 1` -fi -if [ -z "$APACHE_ID" ] ; then - fail "could not deduce APACHE_ID (your apache username); are files signed correctly?" -fi -if ! ( gpg2 --verify ${artifact}.asc ${artifact} 2>&1 | grep ${APACHE_ID}@apache.org > /dev/null ) ; then - fail "could not verify signature; are files signed correctly and ID ${APACHE_ID} correct?" -fi - -cat <<EOF - -Subject: [VOTE] Release Apache Brooklyn ${VERSION_NAME} [rc${RC_NUMBER}] - - -This is to call for a vote for the release of Apache Brooklyn ${VERSION_NAME}. - -This release comprises of a source code distribution, and a corresponding -binary distribution, and Maven artifacts. - -The source and binary distributions, including signatures, digests, etc. can -be found at: - - https://dist.apache.org/repos/dist/dev/incubator/brooklyn/${base} - -The artifact SHA-256 checksums are as follows: - -EOF - -cat release/tmp/${base}/*.sha256 | awk '{print " "$0}' - -cat <<EOF - -The Nexus staging repository for the Maven artifacts is located at: - - https://repository.apache.org/content/repositories/${staging_repo_id} - -All release artifacts are signed with the following key: - - https://people.apache.org/keys/committer/${APACHE_ID}.asc - -KEYS file available here: - - https://dist.apache.org/repos/dist/release/incubator/brooklyn/KEYS - - -The artifacts were built from git commit ID $( git rev-parse HEAD ): - - https://git-wip-us.apache.org/repos/asf?p=incubator-brooklyn.git;a=commit;h=$( git rev-parse HEAD ) - - -Please vote on releasing this package as Apache Brooklyn ${VERSION_NAME}. - -The vote will be open for at least 72 hours. -[ ] +1 Release this package as Apache Brooklyn ${VERSION_NAME} -[ ] +0 no opinion -[ ] -1 Do not release this package because ... - - -Thanks! -EOF - -cat <<EOF - - - -CHECKLIST for reference - -[ ] Download links work. -[ ] Binaries work. -[ ] Checksums and PGP signatures are valid. -[ ] Expanded source archive matches contents of RC tag. -[ ] Expanded source archive builds and passes tests. -[ ] LICENSE is present and correct. -[ ] NOTICE is present and correct, including copyright date. -[ ] All files have license headers where appropriate. -[ ] All dependencies have compatible licenses. -[ ] No compiled archives bundled in source archive. -[ ] I follow this projectâs commits list. - -EOF http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/pull-request-reports/Gemfile ---------------------------------------------------------------------- diff --git a/release/pull-request-reports/Gemfile b/release/pull-request-reports/Gemfile deleted file mode 100644 index 8ab84b5..0000000 --- a/release/pull-request-reports/Gemfile +++ /dev/null @@ -1,5 +0,0 @@ -#ruby=ruby-2.1.2 -#ruby-gemset=brooklyn-release-helpers - -source 'https://rubygems.org' -gem 'github_api' http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/pull-request-reports/Gemfile.lock ---------------------------------------------------------------------- diff --git a/release/pull-request-reports/Gemfile.lock b/release/pull-request-reports/Gemfile.lock deleted file mode 100644 index 859202a..0000000 --- a/release/pull-request-reports/Gemfile.lock +++ /dev/null @@ -1,38 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - addressable (2.3.8) - descendants_tracker (0.0.4) - thread_safe (~> 0.3, >= 0.3.1) - faraday (0.9.1) - multipart-post (>= 1.2, < 3) - github_api (0.12.3) - addressable (~> 2.3) - descendants_tracker (~> 0.0.4) - faraday (~> 0.8, < 0.10) - hashie (>= 3.3) - multi_json (>= 1.7.5, < 2.0) - nokogiri (~> 1.6.3) - oauth2 - hashie (3.4.2) - jwt (1.5.1) - mini_portile (0.6.2) - multi_json (1.11.1) - multi_xml (0.5.5) - multipart-post (2.0.0) - nokogiri (1.6.6.2) - mini_portile (~> 0.6.0) - oauth2 (1.0.0) - faraday (>= 0.8, < 0.10) - jwt (~> 1.0) - multi_json (~> 1.3) - multi_xml (~> 0.5) - rack (~> 1.2) - rack (1.6.4) - thread_safe (0.3.5) - -PLATFORMS - ruby - -DEPENDENCIES - github_api http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/pull-request-reports/pr_report.rb ---------------------------------------------------------------------- diff --git a/release/pull-request-reports/pr_report.rb b/release/pull-request-reports/pr_report.rb deleted file mode 100644 index 95b6317..0000000 --- a/release/pull-request-reports/pr_report.rb +++ /dev/null @@ -1,12 +0,0 @@ -#ruby - -require 'CSV' -require 'github_api' - -gh = Github.new - -CSV.open("pr_report.tsv", "wb", { :col_sep => "\t" }) do |csv| - gh.pull_requests.list('apache', 'incubator-brooklyn'). - select { |pr| pr.state == "open" }. - each { |pr| csv << [ pr.number, pr.title, pr.created_at, pr.user.login ] } -end http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/release/settings.xml ---------------------------------------------------------------------- diff --git a/release/settings.xml b/release/settings.xml deleted file mode 100644 index 2b03994..0000000 --- a/release/settings.xml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" - xmlns="http://maven.apache.org/SETTINGS/1.1.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> - - <servers> - <!-- Required for uploads to Apache's Nexus instance. These are LDAP credentials - the same credentials you - - would use to log in to Git and Jenkins (but not JIRA) --> - <server> - <id>apache.snapshots.https</id> - <username>xxx</username> - <password>xxx</password> - </server> - <server> - <id>apache.releases.https</id> - <username>xxx</username> - <password>xxx</password> - </server> - - <!-- This is used for deployments to the play Artifactory instance that is provisioned by the Vagrant scripts. - - It may be safely ignored. --> - <server> - <id>vagrant-ubuntu-trusty-64</id> - <username>admin</username> - <password>password</password> - </server> - </servers> - -</settings> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/all/pom.xml ---------------------------------------------------------------------- diff --git a/usage/all/pom.xml b/usage/all/pom.xml deleted file mode 100644 index 289d4a6..0000000 --- a/usage/all/pom.xml +++ /dev/null @@ -1,117 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <packaging>jar</packaging> - - <artifactId>brooklyn-all</artifactId> - - <name>Brooklyn All Things</name> - <description> - A meta-dependency for all the major Brooklyn modules. - </description> - - <parent> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-parent</artifactId> - <version>0.9.0-SNAPSHOT</version> <!-- BROOKLYN_VERSION --> - <relativePath>../../parent/pom.xml</relativePath> - </parent> - - <dependencies> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - </dependency> - - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-policy</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-locations-jclouds</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-webapp</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-messaging</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-monitoring</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-database</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-osgi</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-nosql</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-software-network</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-launcher</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-cli</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-test-framework</artifactId> - <version>${project.version}</version> - </dependency> - - <!-- bring in all jclouds-supported cloud providers --> - <dependency> - <groupId>${jclouds.groupId}</groupId> - <artifactId>jclouds-allcompute</artifactId> - </dependency> - </dependencies> - -</project> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/NOTES.txt ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/NOTES.txt b/usage/archetypes/quickstart/NOTES.txt deleted file mode 100644 index 4028bf6..0000000 --- a/usage/archetypes/quickstart/NOTES.txt +++ /dev/null @@ -1,76 +0,0 @@ - -This file contains notes for anyone working on the archetype. - - -Some things to keep in mind: - -* The sample project in `src/brooklyn-sample` is what populates the - archetype source (in `src/main/resources/archetype-resources`, - copied there by the `pom.xml` in this directory, in `clean` phase). - (You can open and edit it in your IDE.) - -* That archetype source then becomes the archetype (in `install` phase) - according to the copy and filter rules in `src/main/resources/META-INF/maven/archetype-metadata.xml` - -* For any changes to the project: - - * ensure `brooklyn-sample` builds as you would like - * ensure the resulting archetype builds as you would like - (should be reasonably safe and automated, but check that the 2 sets of - copy/translation rules above do what you intended!) - * update the `README.*` files in the root of `brooklyn-sample` and the - `src/main/assembly/files` within that - * update the docs under `use/guide/defining-applications/archetype.md` and `use/guide/quickstart/index.md` - - -To build: - - mvn clean install - - -To test a build: - - pushd /tmp - rm -rf brooklyn-sample - export BV=0.9.0-SNAPSHOT # BROOKLYN_VERSION - - mvn archetype:generate \ - \ - -DarchetypeGroupId=org.apache.brooklyn \ - -DarchetypeArtifactId=brooklyn-archetype-quickstart \ - -DarchetypeVersion=${BV} \ - \ - -DgroupId=com.acme.sample \ - -DartifactId=brooklyn-sample \ - -Dversion=0.1.0-SNAPSHOT \ - -Dpackage=com.acme.sample.brooklyn \ - \ - --batch-mode - - cd brooklyn-sample - mvn clean assembly:assembly - cd target/brooklyn-sample-0.1.0-SNAPSHOT-dist/brooklyn-sample-0.1.0-SNAPSHOT/ - ./start.sh launch --cluster --location localhost - - -References - - * http://stackoverflow.com/questions/4082643/how-can-i-test-a-maven-archetype-that-ive-just-created/18916065#18916065 - ----- -Licensed to the Apache Software Foundation (ASF) under one -or more contributor license agreements. See the NOTICE file -distributed with this work for additional information -regarding copyright ownership. The ASF licenses this file -to you under the Apache License, Version 2.0 (the -"License"); you may not use this file except in compliance -with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, -software distributed under the License is distributed on an -"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, either express or implied. See the License for the -specific language governing permissions and limitations -under the License. http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/pom.xml ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/pom.xml b/usage/archetypes/quickstart/pom.xml deleted file mode 100644 index 6caa79e..0000000 --- a/usage/archetypes/quickstart/pom.xml +++ /dev/null @@ -1,232 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <artifactId>brooklyn-archetype-quickstart</artifactId> - <packaging>maven-archetype</packaging> - <name>Brooklyn Quick-Start Project Archetype</name> - <description> - This project defines an archetype for creating new projects which consume brooklyn, - including an example application and an example new entity type, - able to build an OSGi JAR and a binary assembly, with logging and READMEs. - </description> - - <parent> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-parent</artifactId> - <version>0.9.0-SNAPSHOT</version> <!-- BROOKLYN_VERSION --> - <relativePath>../../../parent/pom.xml</relativePath> - </parent> - - <build> - <plugins> - <plugin> - <artifactId>maven-archetype-plugin</artifactId> - <!-- all we want to do is skip _integration tests_ when skipTests is set, not other phases; - but for some reason this seems to do it, and it still builds the archetype (!?). - whereas setting skip inside the integration-test execution goal does NOT work. - - TODO promote to root pom.xml when we better understand why - --> - <configuration> - <skip>${skipTests}</skip> - </configuration> - </plugin> - - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <configuration> - <filesets> - <fileset> - <directory>src/test/resources/projects/integration-test-1/reference</directory> - <includes><include>**/*</include></includes> - </fileset> - <fileset> - <directory>src/main/resources/archetype-resources/</directory> - <includes><include>**/*</include></includes> - </fileset> - </filesets> - </configuration> - </plugin> - - <plugin> - <groupId>com.google.code.maven-replacer-plugin</groupId> - <artifactId>maven-replacer-plugin</artifactId> - <executions> - <execution> - <id>copy-brooklyn-sample-to-integration-test-reference</id> - <phase>clean</phase> - <goals> <goal>replace</goal> </goals> - <configuration> - <basedir>${basedir}/src/brooklyn-sample</basedir> - <outputBasedir>${basedir}</outputBasedir> - <outputDir>src/test/resources/projects/integration-test-1/reference</outputDir> - <includes> <include>**</include> </includes> - <excludes> - <exclude>.*</exclude> - <exclude>.*/**</exclude> - <exclude>target/**</exclude> - <exclude>*.log</exclude> - </excludes> - - <replacements /> - </configuration> - </execution> - <!-- would be nice to reduce the repetion below, but don't see how; - have tried with valueTokenMap but it must lie beneath basedir; - and tried with {input,output}FilePattern but that doesn't apply to dirs --> - <execution> - <!-- copy creating variables and unpackaged, for src/main/java --> - <id>copy-brooklyn-sample-to-archetype-src-main-java</id> - <phase>clean</phase> - <goals> <goal>replace</goal> </goals> - <configuration> - <basedir>${basedir}/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn</basedir> - <outputBasedir>${basedir}</outputBasedir> - <outputDir>src/main/resources/archetype-resources/src/main/java</outputDir> - <includes> <include>**/*</include> </includes> - <replacements> - <replacement> <token>brooklyn-sample</token> <value>\$\{artifactId}</value> </replacement> - <replacement> <token>com\.acme\.sample\.brooklyn</token> <value>\$\{package}</value> </replacement> - <replacement> <token>com/acme/sample/brooklyn</token> <value>\$\{packageInPathFormat}</value> </replacement> - <replacement> <token>com\.acme\.sample</token> <value>\$\{groupId}</value> </replacement> - <replacement> <token>0.1.0-SNAPSHOT</token> <value>\$\{version}</value> </replacement> - </replacements> - </configuration> - </execution> - <execution> - <!-- copy creating variables and unpackaged, for src/test/java --> - <id>copy-brooklyn-sample-to-archetype-src-test-java</id> - <phase>clean</phase> - <goals> <goal>replace</goal> </goals> - <configuration> - <basedir>${basedir}/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn</basedir> - <outputBasedir>${basedir}</outputBasedir> - <outputDir>src/main/resources/archetype-resources/src/test/java</outputDir> - <includes> <include>**/*</include> </includes> - <replacements> - <replacement> <token>brooklyn-sample</token> <value>\$\{artifactId}</value> </replacement> - <replacement> <token>com\.acme\.sample\.brooklyn</token> <value>\$\{package}</value> </replacement> - <replacement> <token>com/acme/sample/brooklyn</token> <value>\$\{packageInPathFormat}</value> </replacement> - <replacement> <token>com\.acme\.sample</token> <value>\$\{groupId}</value> </replacement> - <replacement> <token>0.1.0-SNAPSHOT</token> <value>\$\{version}</value> </replacement> - </replacements> - </configuration> - </execution> - <execution> - <!-- copy creating variables, for all other places --> - <id>copy-brooklyn-sample-to-archetype-resources</id> - <phase>clean</phase> - <goals> <goal>replace</goal> </goals> - <configuration> - <basedir>${basedir}/src/brooklyn-sample/</basedir> - <outputBasedir>${basedir}</outputBasedir> - <outputDir>src/main/resources/archetype-resources/</outputDir> - <includes> <include>**/*</include> </includes> - <excludes> - <exclude>src/main/java/**</exclude> - <exclude>src/test/java/**</exclude> - <exclude>target/**</exclude> - <exclude>test-output/**</exclude> - <exclude>.*</exclude> - <exclude>**/*.png</exclude> - <exclude>.*/**</exclude> - <exclude>*.log</exclude> - <exclude>**/*.sh</exclude> - </excludes> - <replacements> - <!-- special chars in velocity have to be escaped. - fortunately we only use fairly simple examples so we don't need to solve the general case! --> - <!-- escaping # is ugly --> - <replacement> <token>(#+)</token> <value>#set\(\$H='$1'\)\${H}</value> </replacement> - <!-- and escaping $ doesn't even seem to work; perhaps an old version of velocity in use? - (however velocity ignores $ except for variables which are defined, so we're okay) - <replacement> <token>\$</token> <value>\\\$</value> </replacement> - --> - - <replacement> <token>brooklyn-sample</token> <value>\$\{artifactId}</value> </replacement> - <replacement> <token>com\.acme\.sample\.brooklyn</token> <value>\$\{package}</value> </replacement> - <replacement> <token>com/acme/sample/brooklyn</token> <value>\$\{packageInPathFormat}</value> </replacement> - <replacement> <token>com\.acme\.sample</token> <value>\$\{groupId}</value> </replacement> - <replacement> <token>0.1.0-SNAPSHOT</token> <value>\$\{version}</value> </replacement> - </replacements> - </configuration> - </execution> - <execution> - <!-- copy creating variables, for all other places --> - <id>copy-brooklyn-sample-to-archetype-resources-binary</id> - <phase>clean</phase> - <goals> <goal>replace</goal> </goals> - <configuration> - <basedir>${basedir}/src/brooklyn-sample/</basedir> - <outputBasedir>${basedir}</outputBasedir> - <outputDir>src/main/resources/archetype-resources/</outputDir> - <includes> - <include>**/*.png</include> - <include>**/*.sh</include> - </includes> - <excludes> - <exclude>target/**</exclude> - <exclude>test-output/**</exclude> - <exclude>.*</exclude> - <exclude>.*/**</exclude> - </excludes> - <!-- no replacements for binary (put one just so we can use this plugin for consistency) --> - <replacements><replacement> <token>NONCE_123456789XYZ</token> <value>NONCE_123456789XYZ</value> </replacement></replacements> - </configuration> - </execution> - - </executions> - </plugin> - - </plugins> - <pluginManagement> - <plugins> - <plugin> - <groupId>org.apache.rat</groupId> - <artifactId>apache-rat-plugin</artifactId> - <configuration> - <excludes combine.children="append"> - <!-- - The maven archetype are files "without any degree of creativity". They are intended - purely as a template to generate a new project for a user, where upon the user can - write their code within this new project. - The exclusions seem to need to include code that is auto-generated during a test run. - --> - <exclude>**/src/main/resources/archetype-resources/**/*</exclude> - <exclude>**/src/test/resources/projects/integration-test-1/goal.txt</exclude> - <exclude>**/src/test/resources/projects/integration-test-1/reference/**/*</exclude> - <exclude>**/src/main/java/sample/**/*Sample*.java</exclude> - <exclude>**/src/main/resources/logback-custom.xml</exclude> - <exclude>**/src/brooklyn-sample/README.md</exclude> - <exclude>**/src/brooklyn-sample/pom.xml</exclude> - <exclude>**/src/brooklyn-sample/src/main/assembly/files/conf/*</exclude> - <exclude>**/src/brooklyn-sample/src/main/java/**/*.java</exclude> - <exclude>**/src/brooklyn-sample/src/main/resources/logback-custom.xml</exclude> - <exclude>**/src/brooklyn-sample/src/test/java/**/*.java</exclude> - </excludes> - </configuration> - </plugin> - </plugins> - </pluginManagement> - - </build> - -</project> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/README.md ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/README.md b/usage/archetypes/quickstart/src/brooklyn-sample/README.md deleted file mode 100644 index b40df41..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/README.md +++ /dev/null @@ -1,73 +0,0 @@ -brooklyn-sample -=== - -This is a Sample Brooklyn project, showing how to define an application -which Brooklyn will deploy and manage. - -This sample project is intended to be customized to suit your purposes: but -search for all lines containing the word "sample" to make sure all the -references to this being a sample are removed! - -To build an assembly, simply run: - - mvn clean assembly:assembly - -This creates a tarball with a full standalone application which can be installed in any *nix machine at: - target/brooklyn-sample-0.1.0-SNAPSHOT-dist.tar.gz - -It also installs an unpacked version which you can run locally: - - cd target/brooklyn-sample-0.1.0-SNAPSHOT-dist/brooklyn-sample-0.1.0-SNAPSHOT - ./start.sh server - -For more information see the README (or `./start.sh help`) in that directory. -On OS X and Linux, this application will deploy to localhost *if* you have key-based -password-less (and passphrase-less) ssh enabled. - -To configure cloud and fixed-IP locations, see the README file in the built application directly. -For more information you can run `./start.sh help`) in that directory. - - -### Opening in an IDE - -To open this project in an IDE, you will need maven support enabled -(e.g. with the relevant plugin). You should then be able to develop -it and run it as usual. For more information on IDE support, visit: - - https://brooklyn.incubator.apache.org/v/latest/dev/env/ide/ - - -### Customizing the Assembly - -The artifacts (directory and tar.gz by default) which get built into -`target/` can be changed. Simply edit the relevant files under -`src/main/assembly`. - -You will likely wish to customize the `SampleMain` class as well as -the `Sample*App` classes provided. That is the intention! -You will also likely want to update the `start.sh` script and -the `README.*` files. - -To easily find the bits you should customize, do a: - - grep -ri sample src/ *.* - - -### More About Apache Brooklyn - -Apache Brooklyn is a code library and framework for managing applications in a -cloud-first dev-ops-y way. It has been used to create this sample project -which shows how to define an application and entities for Brooklyn. - -This project can be extended for more complex topologies and more -interesting applications, and to develop the policies to scale or tune the -deployment depending on what the application needs. - -For more information consider: - -* Visiting the Apache Brooklyn home page at https://brooklyn.incubator.apache.org -* Finding us on IRC #brooklyncentral or email (click "Community" at the site above) -* Forking the project at http://github.com/apache/incubator-brooklyn/ - -A sample Brooklyn project should specify its license. - http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/pom.xml ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/pom.xml b/usage/archetypes/quickstart/src/brooklyn-sample/pom.xml deleted file mode 100644 index 44f5f93..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/pom.xml +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - - <modelVersion>4.0.0</modelVersion> - - <parent> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-downstream-parent</artifactId> - <version>0.9.0-SNAPSHOT</version> <!-- BROOKLYN_VERSION --> - </parent> - - <groupId>com.acme.sample</groupId> - <artifactId>brooklyn-sample</artifactId> - <version>0.1.0-SNAPSHOT</version> - <packaging>jar</packaging> - - <name>Sample Brooklyn Project com.acme.sample:brooklyn-sample v0.1.0-SNAPSHOT</name> - <description> - Sample optional description goes here. - </description> - - <!-- Optional metadata (commented out in this sample) - - <url>https://github.com/sample/sample</url> - - <licenses> - <license> - <name>The Apache Software License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - <distribution>repo</distribution> - </license> - </licenses> - - <developers> - <developer> - <name>Sample Project Committers</name> - </developer> - </developers> - - <scm> - <connection>scm:git:git://github.com/sample/sample</connection> - <developerConnection>scm:git:[email protected]:sample/sample.git</developerConnection> - <url>http://github.com/sample/sample</url> - </scm> - - --> - - <properties> - <project.entry>com.acme.sample.brooklyn.SampleMain</project.entry> - </properties> - - <repositories> - <repository> - <id>apache.snapshots</id> - <name>Apache Snapshot Repository</name> - <url>http://repository.apache.org/snapshots</url> - <releases> - <enabled>false</enabled> - </releases> - </repository> - </repositories> - - <dependencies> - <dependency> - <!-- this pulls in all brooklyn entities and clouds; - you can cherry pick selected ones instead (for a smaller build) --> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-all</artifactId> - <version>${brooklyn.version}</version> - </dependency> - - <dependency> - <!-- includes testng and useful logging for tests --> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-test-support</artifactId> - <version>${brooklyn.version}</version> - <scope>test</scope> - </dependency> - - <dependency> - <!-- this gives us flexible and easy-to-use logging; just edit logback-custom.xml! --> - <groupId>org.apache.brooklyn</groupId> - <artifactId>brooklyn-logback-xml</artifactId> - <version>${brooklyn.version}</version> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <configuration> - <descriptors> - <descriptor>src/main/assembly/assembly.xml</descriptor> - </descriptors> - </configuration> - </plugin> - </plugins> - </build> - -</project> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/assembly.xml ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/assembly.xml b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/assembly.xml deleted file mode 100644 index 2875a8a..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/assembly.xml +++ /dev/null @@ -1,88 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. ---> -<assembly> - <id>dist</id> - <!-- Generates an archive and a dir containing the needed files; - can add e.g. zip to the following - (but executable bit is not preserved) --> - <formats> - <format>dir</format> - <format>tar.gz</format> - </formats> - - <!-- Adds dependencies to zip package under lib directory --> - <dependencySets> - <dependencySet> - <!-- - Project artifact is not copied under library directory since - it is added to the root directory of the zip package. - --> - <useProjectArtifact>false</useProjectArtifact> - <outputDirectory>lib</outputDirectory> - <unpack>false</unpack> - </dependencySet> - </dependencySets> - - <!-- - Adds startup scripts to the root directory of zip package. The startup - scripts are located to src/main/scripts directory as stated by Maven - conventions. - --> - <files> - <file> - <source>src/main/assembly/scripts/start.sh</source> - <outputDirectory></outputDirectory> - <fileMode>0755</fileMode> - <filtered>true</filtered> - </file> - </files> - <fileSets> - <fileSet> - <directory>src/main/assembly/scripts</directory> - <outputDirectory></outputDirectory> - <fileMode>0755</fileMode> - <includes> - <include>*</include> - </includes> - <excludes> - <exclude>start.sh</exclude> - </excludes> - </fileSet> - <!-- add additional files (but not marked executable) --> - <fileSet> - <directory>src/main/assembly/files</directory> - <outputDirectory></outputDirectory> - <includes> - <include>**</include> - </includes> - </fileSet> - <!-- adds jar package to the root directory of zip package --> - <fileSet> - <directory>target</directory> - <outputDirectory></outputDirectory> - <includes> - <include>*.jar</include> - </includes> - <excludes> - <exclude>*-tests.jar</exclude> - </excludes> - </fileSet> - </fileSets> -</assembly> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/README.txt ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/README.txt b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/README.txt deleted file mode 100644 index 8ba14f1..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/README.txt +++ /dev/null @@ -1,96 +0,0 @@ -brooklyn-sample -=== - -This is a sample application which is launched and managed by Brooklyn. -This README file is at the root of the built assembly, which can be uploaded -and run most anywhere. This file provides end-user instructions. - -To use this, configure any cloud credentials then run ./start.sh in this -directory. You can then access the management context in your browser, -typically on http://localhost:8081 , and through that console deploy the -applications contained in this archive. - - -### Cloud Credentials - -To run, you'll need to specify credentials for your preferred cloud. This -can be done in `~/.brooklyn/brooklyn.properties`. - -A recommended starting point is the file at: - - https://brooklyn.incubator.apache.org/v/latest/use/guide/quickstart/brooklyn.properties - -As a quick-start, you can specify: - - brooklyn.location.jclouds.aws-ec2.identity=AKXXXXXXXXXXXXXXXXXX - brooklyn.location.jclouds.aws-ec2.credential=secret01xxxxxxxxxxxxxxxxxxxxxxxxxxx - - brooklyn.location.named.My_Amazon_US_west=jclouds:aws-ec2:us-west-1 - brooklyn.location.named.My_Amazon_EU=jclouds:aws-ec2:eu-west-1 - -Alternatively these can be set as shell environment parameters or JVM system properties. - -Many other clouds are supported also, as well as pre-existing machines -("bring your own nodes"), custom endpoints for private clouds, and specifying -custom keys and passphrases. For more information see: - - https://brooklyn.incubator.apache.org/v/latest/use/guide/defining-applications/common-usage#locations - - -### Run - -Usage: - - ./start.sh launch [--WHAT] \ - [--port 8081+] \ - [--location location] - -The optional port argument specifies the port where the Brooklyn console -will be running, such as localhost:8081. (The console is only bound to -localhost, unless you set up users and security, as described at -https://brooklyn.incubator.apache.org/v/latest/use/guide/management/ .) - -In the console, you can access the catalog and deploy applications to -configured locations. - -In this sample application, `--cluster` and `--single` are supported in place of `--WHAT`, -corresponding to sample blueprints in the project. This can be left blank to have nothing -launched; note that the blueprints can be launched at runtime via the GUI or API. - -Use `./start.sh help` or `./start.sh help launch` for more detailed help. - -The location might be `localhost` (the default), `aws-ec2:us-east-1`, -`openstack:endpoint`, `softlayer`, or based on names, such as -`named:My_Amazon_US_west`, so long as it is configured as above. -(Localhost does not need any configuration in `~/brooklyn/brooklyn.properties`, -provided you have password-less ssh access enabled to localhost, using a -private key with no passphrase.) - - -### More About Brooklyn - -Brooklyn is a code library and framework for managing applications in a -cloud-first dev-ops-y way. It has been used to create this sample project -which shows how to define an application and entities for Brooklyn. - -This project can be extended for more complex topologies and more -interesting applications, and to develop the policies to scale or tune the -deployment depending on what the application needs. - -For more information consider: - -* Visiting the open-source Brooklyn home page at http://brooklyncentral.github.com -* Forking the Brooklyn project at http://github.com/brooklyncentral/brooklyn -* Emailing [email protected] - -For commercial enquiries -- including bespoke development and paid support -- -contact Cloudsoft, the supporters of Brooklyn, at: - -* www.CloudsoftCorp.com -* [email protected] - -Brooklyn is (c) 2014 Cloudsoft Corporation and released as open source under -the Apache License v2.0. - -A sample Brooklyn project should specify its license here. - http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/conf/logback.xml ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/conf/logback.xml b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/conf/logback.xml deleted file mode 100644 index 7b7a972..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/files/conf/logback.xml +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<configuration> - - <!-- logging configuration for this project; edit this file as required, or override the files - this includes as described in the Logging section of the brooklyn users guide. - this project already supplies a logback-custom.xml which gets included to log our - classes at debug level and write to a log file named after this project --> - - <include resource="logback-main.xml"/> - -</configuration> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/scripts/start.sh ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/scripts/start.sh b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/scripts/start.sh deleted file mode 100755 index 2879b6d..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/assembly/scripts/start.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -if [ ! -z "$JAVA_HOME" ] ; then - JAVA=$JAVA_HOME/bin/java -else - JAVA=`which java` -fi - -if [ ! -x "$JAVA" ] ; then - echo Cannot find java. Set JAVA_HOME or add java to path. - exit 1 -fi - -if [[ ! `ls ${project.artifactId}-*.jar 2> /dev/null` ]] ; then - echo Command must be run from the directory where the JAR is installed. - exit 4 -fi - -$JAVA -Xms256m -Xmx1024m -XX:MaxPermSize=1024m \ - -classpath "conf/:patch/*:*:lib/*" \ - ${project.entry} \ - "$@" http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/SampleMain.java ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/SampleMain.java b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/SampleMain.java deleted file mode 100644 index 253f657..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/SampleMain.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.acme.sample.brooklyn; - -import java.util.Arrays; - -import io.airlift.command.Command; -import io.airlift.command.Option; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import org.apache.brooklyn.api.catalog.BrooklynCatalog; -import org.apache.brooklyn.cli.Main; - -import com.google.common.base.Objects.ToStringHelper; - -import com.acme.sample.brooklyn.sample.app.*; - -/** - * This class provides a static main entry point for launching a custom Brooklyn-based app. - * <p> - * It inherits the standard Brooklyn CLI options from {@link Main}, - * plus adds a few more shortcuts for favourite blueprints to the {@link LaunchCommand}. - */ -public class SampleMain extends Main { - - private static final Logger log = LoggerFactory.getLogger(SampleMain.class); - - public static final String DEFAULT_LOCATION = "localhost"; - - public static void main(String... args) { - log.debug("CLI invoked with args "+Arrays.asList(args)); - new SampleMain().execCli(args); - } - - @Override - protected String cliScriptName() { - return "start.sh"; - } - - @Override - protected Class<? extends BrooklynCommand> cliLaunchCommand() { - return LaunchCommand.class; - } - - @Command(name = "launch", description = "Starts a server, and optionally an application. " - + "Use e.g. --single or --cluster to launch one-node and clustered variants of the sample web application.") - public static class LaunchCommand extends Main.LaunchCommand { - - // add these options to the LaunchCommand as shortcuts for our favourite applications - - @Option(name = { "--single" }, description = "Launch a single web-server instance") - public boolean single; - - @Option(name = { "--cluster" }, description = "Launch a web-server cluster") - public boolean cluster; - - @Override - public Void call() throws Exception { - // process our CLI arguments - if (single) setAppToLaunch( SingleWebServerSample.class.getCanonicalName() ); - if (cluster) setAppToLaunch( ClusterWebServerDatabaseSample.class.getCanonicalName() ); - - // now process the standard launch arguments - return super.call(); - } - - @Override - protected void populateCatalog(BrooklynCatalog catalog) { - super.populateCatalog(catalog); - catalog.addItem(SingleWebServerSample.class); - catalog.addItem(ClusterWebServerDatabaseSample.class); - } - - @Override - public ToStringHelper string() { - return super.string() - .add("single", single) - .add("cluster", cluster); - } - } -} http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/ClusterWebServerDatabaseSample.java ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/ClusterWebServerDatabaseSample.java b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/ClusterWebServerDatabaseSample.java deleted file mode 100644 index 11d977f..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/ClusterWebServerDatabaseSample.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.acme.sample.brooklyn.sample.app; - -import java.util.concurrent.TimeUnit; - -import org.apache.brooklyn.api.catalog.Catalog; -import org.apache.brooklyn.api.catalog.CatalogConfig; -import org.apache.brooklyn.api.entity.EntitySpec; -import org.apache.brooklyn.api.sensor.AttributeSensor; -import org.apache.brooklyn.config.ConfigKey; -import org.apache.brooklyn.core.config.ConfigKeys; -import org.apache.brooklyn.core.entity.AbstractApplication; -import org.apache.brooklyn.core.entity.Entities; -import org.apache.brooklyn.core.location.PortRanges; -import org.apache.brooklyn.core.sensor.Sensors; -import org.apache.brooklyn.enricher.stock.SensorPropagatingEnricher; -import org.apache.brooklyn.enricher.stock.SensorTransformingEnricher; -import org.apache.brooklyn.entity.database.DatastoreMixins.DatastoreCommon; -import org.apache.brooklyn.entity.database.mysql.MySqlNode; -import org.apache.brooklyn.entity.group.DynamicCluster; -import org.apache.brooklyn.entity.java.JavaEntityMethods; -import org.apache.brooklyn.entity.webapp.ControlledDynamicWebAppCluster; -import org.apache.brooklyn.entity.webapp.DynamicWebAppCluster; -import org.apache.brooklyn.entity.webapp.JavaWebAppService; -import org.apache.brooklyn.entity.webapp.WebAppService; -import org.apache.brooklyn.entity.webapp.WebAppServiceConstants; -import org.apache.brooklyn.policy.autoscaling.AutoScalerPolicy; -import org.apache.brooklyn.policy.enricher.HttpLatencyDetector; -import org.apache.brooklyn.util.maven.MavenArtifact; -import org.apache.brooklyn.util.maven.MavenRetriever; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.google.common.base.Functions; - -import static org.apache.brooklyn.core.sensor.DependentConfiguration.attributeWhenReady; -import static org.apache.brooklyn.core.sensor.DependentConfiguration.formatString; - - -/** This sample builds a 3-tier application with an elastic app-server cluster, - * and it sets it up for use in the Brooklyn catalog. - * <p> - * Note that root access (and xcode etc) may be required to install nginx. - **/ -@Catalog(name="Elastic Java Web + DB", - description="Deploys a WAR to a load-balanced elastic Java AppServer cluster, " + - "with an auto-scaling policy, " + - "wired to a database initialized with the provided SQL; " + - "defaults to a 'Hello World' chatroom app.", - iconUrl="classpath://sample-icon.png") -public class ClusterWebServerDatabaseSample extends AbstractApplication { - - public static final Logger LOG = LoggerFactory.getLogger(ClusterWebServerDatabaseSample.class); - - // ---------- WAR configuration --------------- - - public static final String DEFAULT_WAR_URL = - // can supply any URL -- this loads a stock example from maven central / sonatype - MavenRetriever.localUrl(MavenArtifact.fromCoordinate("io.brooklyn.example:brooklyn-example-hello-world-sql-webapp:war:0.5.0")); - - @CatalogConfig(label="WAR (URL)", priority=2) - public static final ConfigKey<String> WAR_URL = ConfigKeys.newConfigKey( - "app.war", "URL to the application archive which should be deployed", DEFAULT_WAR_URL); - - - // ---------- DB configuration ---------------- - - // this is included in src/main/resources. if in an IDE, ensure your build path is set appropriately. - public static final String DEFAULT_DB_SETUP_SQL_URL = "classpath://visitors-creation-script.sql"; - - @CatalogConfig(label="DB Setup SQL (URL)", priority=1) - public static final ConfigKey<String> DB_SETUP_SQL_URL = ConfigKeys.newConfigKey( - "app.db_sql", "URL to the SQL script to set up the database", - DEFAULT_DB_SETUP_SQL_URL); - - public static final String DB_TABLE = "visitors"; - public static final String DB_USERNAME = "brooklyn"; - public static final String DB_PASSWORD = "br00k11n"; - - - // --------- Custom Sensor -------------------- - - AttributeSensor<Integer> APPSERVERS_COUNT = Sensors.newIntegerSensor( - "appservers.count", "Number of app servers deployed"); - - - // --------- Initialization ------------------- - - /** Initialize our application. In this case it consists of - * a single DB, with a load-balanced cluster (nginx + multiple JBosses, by default), - * with some sensors and a policy. */ - @Override - public void init() { - DatastoreCommon db = addChild( - EntitySpec.create(MySqlNode.class) - .configure(MySqlNode.CREATION_SCRIPT_URL, Entities.getRequiredUrlConfig(this, DB_SETUP_SQL_URL))); - - ControlledDynamicWebAppCluster web = addChild( - EntitySpec.create(ControlledDynamicWebAppCluster.class) - // set WAR to use, and port to use - .configure(JavaWebAppService.ROOT_WAR, getConfig(WAR_URL)) - .configure(WebAppService.HTTP_PORT, PortRanges.fromString("8080+")) - -// // optionally - use Tomcat instead of JBoss (default: -// .configure(ControlledDynamicWebAppCluster.MEMBER_SPEC, EntitySpec.create(TomcatServer.class)) - - // inject a JVM system property to point to the DB - .configure(JavaEntityMethods.javaSysProp("brooklyn.example.db.url"), - formatString("jdbc:%s%s?user=%s\\&password=%s", - attributeWhenReady(db, DatastoreCommon.DATASTORE_URL), DB_TABLE, DB_USERNAME, DB_PASSWORD)) - - // start with 2 appserver nodes, initially - .configure(DynamicCluster.INITIAL_SIZE, 2) - ); - - // add an enricher which measures latency - web.addEnricher(HttpLatencyDetector.builder(). - url(WebAppServiceConstants.ROOT_URL). - rollup(10, TimeUnit.SECONDS). - build()); - - // add a policy which scales out based on Reqs/Sec - web.getCluster().addPolicy(AutoScalerPolicy.builder(). - metric(DynamicWebAppCluster.REQUESTS_PER_SECOND_IN_WINDOW_PER_NODE). - metricRange(10, 100). - sizeRange(2, 5). - build()); - - // add a few more sensors at the top-level (KPI's at the root of the application) - addEnricher(SensorPropagatingEnricher.newInstanceListeningTo(web, - WebAppServiceConstants.ROOT_URL, - DynamicWebAppCluster.REQUESTS_PER_SECOND_IN_WINDOW, - HttpLatencyDetector.REQUEST_LATENCY_IN_SECONDS_IN_WINDOW)); - addEnricher(SensorTransformingEnricher.newInstanceTransforming(web, - DynamicWebAppCluster.GROUP_SIZE, Functions.<Integer>identity(), APPSERVERS_COUNT)); - } - -} http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/SingleWebServerSample.java ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/SingleWebServerSample.java b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/SingleWebServerSample.java deleted file mode 100644 index 3cc9426..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/java/com/acme/sample/brooklyn/sample/app/SingleWebServerSample.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.acme.sample.brooklyn.sample.app; - -import org.apache.brooklyn.api.entity.EntitySpec; -import org.apache.brooklyn.core.entity.AbstractApplication; -import org.apache.brooklyn.core.entity.Attributes; -import org.apache.brooklyn.core.location.PortRanges; -import org.apache.brooklyn.entity.webapp.JavaWebAppService; -import org.apache.brooklyn.entity.webapp.jboss.JBoss7Server; -import org.apache.brooklyn.util.maven.MavenArtifact; -import org.apache.brooklyn.util.maven.MavenRetriever; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** This example starts one web app on 8080. */ -public class SingleWebServerSample extends AbstractApplication { - - public static final Logger LOG = LoggerFactory.getLogger(SingleWebServerSample.class); - - public static final String DEFAULT_WAR_URL = - // can supply any URL -- this loads a stock example from maven central / sonatype - MavenRetriever.localUrl(MavenArtifact.fromCoordinate("io.brooklyn.example:brooklyn-example-hello-world-sql-webapp:war:0.5.0")); - - /** Initialize our application. In this case it consists of - * a single JBoss entity, configured to run the WAR above. */ - @Override - public void init() { - addChild(EntitySpec.create(JBoss7Server.class) - .configure(JavaWebAppService.ROOT_WAR, DEFAULT_WAR_URL) - .configure(Attributes.HTTP_PORT, PortRanges.fromString("8080+"))); - } - -} http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/logback-custom.xml ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/logback-custom.xml b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/logback-custom.xml deleted file mode 100644 index 5a1ec98..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/logback-custom.xml +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<included> - - <!-- include everything in this project at debug level --> - <logger name="com.acme.sample.brooklyn" level="DEBUG"/> - - <!-- logfile named after this project --> - <property name="logging.basename" scope="context" value="brooklyn-sample" /> - -</included> http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/sample-icon.png ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/sample-icon.png b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/sample-icon.png deleted file mode 100644 index 542a1de..0000000 Binary files a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/sample-icon.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/visitors-creation-script.sql ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/visitors-creation-script.sql b/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/visitors-creation-script.sql deleted file mode 100644 index 0a805c4..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/main/resources/visitors-creation-script.sql +++ /dev/null @@ -1,35 +0,0 @@ --- --- Licensed to the Apache Software Foundation (ASF) under one --- or more contributor license agreements. See the NOTICE file --- distributed with this work for additional information --- regarding copyright ownership. The ASF licenses this file --- to you under the Apache License, Version 2.0 (the --- "License"); you may not use this file except in compliance --- with the License. You may obtain a copy of the License at --- --- http://www.apache.org/licenses/LICENSE-2.0 --- --- Unless required by applicable law or agreed to in writing, --- software distributed under the License is distributed on an --- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --- KIND, either express or implied. See the License for the --- specific language governing permissions and limitations --- under the License. --- -create database visitors; -use visitors; -create user 'brooklyn' identified by 'br00k11n'; -grant usage on *.* to 'brooklyn'@'%' identified by 'br00k11n'; -# ''@localhost is sometimes set up, overriding brooklyn@'%', so do a second explicit grant -grant usage on *.* to 'brooklyn'@'localhost' identified by 'br00k11n'; -grant all privileges on visitors.* to 'brooklyn'@'%'; -flush privileges; - -CREATE TABLE MESSAGES ( - id INT NOT NULL AUTO_INCREMENT, - NAME VARCHAR(30) NOT NULL, - MESSAGE VARCHAR(400) NOT NULL, - PRIMARY KEY (ID) - ); - -INSERT INTO MESSAGES values (default, 'Isaac Asimov', 'I grew up in Brooklyn' ); http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleLocalhostIntegrationTest.java ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleLocalhostIntegrationTest.java b/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleLocalhostIntegrationTest.java deleted file mode 100644 index f640f6a..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleLocalhostIntegrationTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.acme.sample.brooklyn.sample.app; - -import java.util.Arrays; -import java.util.Iterator; - -import org.apache.brooklyn.api.entity.Entity; -import org.apache.brooklyn.api.entity.EntitySpec; -import org.apache.brooklyn.api.mgmt.ManagementContext; -import org.apache.brooklyn.core.mgmt.internal.LocalManagementContext; -import org.apache.brooklyn.core.entity.Entities; -import org.apache.brooklyn.core.entity.StartableApplication; -import org.apache.brooklyn.entity.webapp.JavaWebAppService; -import org.apache.brooklyn.util.core.ResourceUtils; -import org.apache.brooklyn.util.text.Strings; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.Assert; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -/** - * Sample integration tests which show how to launch the sample applications on localhost, - * make some assertions about them, and then destroy them. - */ -@Test(groups="Integration") -public class SampleLocalhostIntegrationTest { - - private static final Logger log = LoggerFactory.getLogger(SampleLocalhostIntegrationTest.class); - - private ManagementContext mgmt; - - @BeforeMethod(alwaysRun=true) - public void setup() { - mgmt = new LocalManagementContext(); - } - - @AfterMethod(alwaysRun=true) - public void shutdown() { - if (mgmt != null) Entities.destroyAll(mgmt); - } - - - public void testSingle() { - StartableApplication app = mgmt.getEntityManager().createEntity( - EntitySpec.create(StartableApplication.class, SingleWebServerSample.class)); - Entities.startManagement(app, mgmt); - Entities.start(app, Arrays.asList(mgmt.getLocationRegistry().resolve("localhost"))); - - Iterator<Entity> children = app.getChildren().iterator(); - if (!children.hasNext()) Assert.fail("Should have had a single JBoss child; had none"); - - Entity web = children.next(); - - if (children.hasNext()) Assert.fail("Should have had a single JBoss child; had too many: "+app.getChildren()); - - String url = web.getAttribute(JavaWebAppService.ROOT_URL); - Assert.assertNotNull(url); - - String page = new ResourceUtils(this).getResourceAsString(url); - log.info("Read web page for "+app+" from "+url+":\n"+page); - Assert.assertTrue(!Strings.isBlank(page)); - } - - public void testCluster() { - StartableApplication app = mgmt.getEntityManager().createEntity( - EntitySpec.create(StartableApplication.class, ClusterWebServerDatabaseSample.class)); - Entities.startManagement(app, mgmt); - Entities.start(app, Arrays.asList(mgmt.getLocationRegistry().resolve("localhost"))); - - log.debug("APP is started"); - - String url = app.getAttribute(JavaWebAppService.ROOT_URL); - Assert.assertNotNull(url); - - String page = new ResourceUtils(this).getResourceAsString(url); - log.info("Read web page for "+app+" from "+url+":\n"+page); - Assert.assertTrue(!Strings.isBlank(page)); - } - -} http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleUnitTest.java ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleUnitTest.java b/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleUnitTest.java deleted file mode 100644 index 6a34301..0000000 --- a/usage/archetypes/quickstart/src/brooklyn-sample/src/test/java/com/acme/sample/brooklyn/sample/app/SampleUnitTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.acme.sample.brooklyn.sample.app; - -import org.apache.brooklyn.api.entity.Entity; -import org.apache.brooklyn.api.entity.EntitySpec; -import org.apache.brooklyn.api.mgmt.ManagementContext; -import org.apache.brooklyn.core.mgmt.internal.LocalManagementContext; -import org.apache.brooklyn.core.entity.Entities; -import org.apache.brooklyn.core.entity.StartableApplication; -import org.apache.brooklyn.entity.database.DatastoreMixins.DatastoreCommon; -import org.apache.brooklyn.entity.database.mysql.MySqlNode; -import org.apache.brooklyn.entity.webapp.JavaWebAppService; -import org.apache.brooklyn.entity.webapp.WebAppService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.Assert; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.common.base.Predicates; -import com.google.common.collect.Iterables; - -/** - * Unit tests for the sample applications defined in this project. - * Shows how to examine the spec and make assertions about configuration. - */ -@Test -public class SampleUnitTest { - - private static final Logger log = LoggerFactory.getLogger(SampleUnitTest.class); - - - private ManagementContext mgmt; - - @BeforeMethod(alwaysRun=true) - public void setup() { - mgmt = new LocalManagementContext(); - } - - @AfterMethod(alwaysRun=true) - public void shutdown() { - if (mgmt != null) Entities.destroyAll(mgmt); - } - - - public void testSampleSingleStructure() { - StartableApplication app = mgmt.getEntityManager().createEntity( - EntitySpec.create(StartableApplication.class, SingleWebServerSample.class)); - log.info("app from spec is: "+app); - - Assert.assertEquals(app.getChildren().size(), 1); - Assert.assertNotNull( app.getChildren().iterator().next().getConfig(JavaWebAppService.ROOT_WAR) ); - } - - public void testSampleClusterStructure() { - StartableApplication app = mgmt.getEntityManager().createEntity( - EntitySpec.create(StartableApplication.class, ClusterWebServerDatabaseSample.class)); - log.info("app from spec is: "+app); - - Assert.assertEquals(app.getChildren().size(), 2); - - Entity webappCluster = Iterables.find(app.getChildren(), Predicates.instanceOf(WebAppService.class)); - Entity database = Iterables.find(app.getChildren(), Predicates.instanceOf(DatastoreCommon.class)); - - Assert.assertNotNull( webappCluster.getConfig(JavaWebAppService.ROOT_WAR) ); - Assert.assertNotNull( database.getConfig(MySqlNode.CREATION_SCRIPT_URL) ); - } - -} http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/29757eea/usage/archetypes/quickstart/src/main/resources/.gitignore ---------------------------------------------------------------------- diff --git a/usage/archetypes/quickstart/src/main/resources/.gitignore b/usage/archetypes/quickstart/src/main/resources/.gitignore deleted file mode 100644 index 6d7b6a3..0000000 --- a/usage/archetypes/quickstart/src/main/resources/.gitignore +++ /dev/null @@ -1 +0,0 @@ -archetype-resources
