Skip to content

Instantly share code, notes, and snippets.

Avatar

Alex Heneveld ahgittin

View GitHub Profile
@ahgittin
ahgittin / 1-get-amp-running-tomcat.yaml
Last active Jul 21, 2020
Cloudsoft AMP Training examples
View 1-get-amp-running-tomcat.yaml
name: My Tomcat Server
location: my-first-location
services:
- type: 'TomcatServer'
brooklyn.config:
wars.root: >-
http://bit.ly/2dcaKIV
View bucket.tf
provider "aws" {
region = "eu-central-1"
}
resource "aws_s3_bucket" "bucket1" {
bucket = "alex-example1-bucket1"
acl = "private"
}
resource "aws_s3_bucket" "bucket2" {
@ahgittin
ahgittin / retrieve-ec2-instance-types.sh
Last active Nov 13, 2019 — forked from nmagee/retrieve-ec2-instance-types.sh
Query the AWS Pricing API to get all currently available EC2 instance types
View retrieve-ec2-instance-types.sh
curl https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/current/index.json > ec2-pricing.json
cat ec2-pricing.json | jq -r '.products[].attributes["instanceType"]' | sort -u | grep '\.' > instances
cat ec2-pricing.json | jq -c '[.products[].attributes] | [ .[] | select(.instanceType) | select(.location) | {location,instanceType} ] | group_by(.location) | [{ (.[][0].location): [ .[][].instanceType ] | unique }] | sort' > instance-by-region.json
cat instance-by-region.json | jq -r '[ .[] | to_entries | { (.[].key): .[].value | join(", ") } ] > instances-string-by-region.json
View brooklyn-scan-dangling-refs.sh
for l in locations/* ; do
ENT=`xmlstarlet sel -t -v "location/locationConfig/callerContext/entityProxy" $l`
if [ ! -z "$ENT" ] ; then
if [ -z `find . -name $ENT` ] ; then
# it's a leak
LOC=`basename $l`
echo "Detected location $LOC has reference to deleted entity $ENT - removing it"
rm $l
FILES=`grep -l $LOC locations/*`
if [ ! -z "$FILES" ] ; then
View git-summary.sh
# displays a summary list of commits in your current repo vs upstream branch and upstream master,
# and of working tree changes Added, Modified, Deleted, or not in index ("??")
THIS_COMMAND="$0 $@"
while true; do
case $1 in
-o|--offline)
OFFLINE=true
View test
interface Function2 { int apply(int a, int b); }
int factorial(int n) { return applyFromOneToN(new Function2() { int apply(int a, int b) { return a*b; } }, n); }
@ahgittin
ahgittin / https call
Last active Aug 29, 2015
Brooklyn GUI groovy snippets
View https call
String urlBase = "https://HOSTNAME:8443";
String subUrl = "/";
String password = "PASSWORD";
org.apache.http.client.HttpClient c = new brooklyn.util.http.HttpTool.HttpClientBuilder().https(true).trustAll()
.uri(urlBase)
.credentials(new org.apache.http.auth.UsernamePasswordCredentials(
"admin", password)).build();
brooklyn.util.http.HttpToolResponse r = brooklyn.util.http.HttpTool.httpGet(c, java.net.URI.create(
urlBase+subUrl), null);
View catalog.bom
brooklyn.catalog:
version: 0.1
description: Sample VM with a demo script
name: Alex-AWS-VM-1
location:
jclouds:aws-ec2:
region: eu-west-1
osFamily: ubuntu
@ahgittin
ahgittin / gist:ef8a4b39695f6d4c684e
Created Apr 23, 2015
illustration of correct indentation for Apache Brooklyn `provisioning.properties` and how to specify those properties on the location
View gist:ef8a4b39695f6d4c684e
name: chef-mysql-sample
location:
jclouds:aws-ec2:us-west-1:
minRam: 4gb
services:
- type: chef:mysql
...
provisioning.properties:
# this will override `minRam` set above
minRam: 5046mb
View SampleMonitorEntity.java
package io.cloudsoft.ibm.mms.amp.util;
import brooklyn.config.ConfigKey;
import brooklyn.enricher.Enrichers;
import brooklyn.entity.basic.AbstractEntity;
import brooklyn.entity.basic.Attributes;
import brooklyn.entity.basic.ConfigKeys;
import brooklyn.event.AttributeSensor;
import brooklyn.event.basic.Sensors;
import brooklyn.event.feed.http.HttpFeed;