Skip to content

Instantly share code, notes, and snippets.

View mrueegg's full-sized avatar

Michael Rüegg mrueegg

View GitHub Profile
@mrueegg
mrueegg / JavaFunction.java
Created September 21, 2015 20:59
Calling overriden Scala method of Java interface with varargs parameter resulting in AbstractMethodError in Scala 2.11
public interface JavaFunction<T> {
T apply(Object... var1);
}
@mrueegg
mrueegg / dsl_problem.groovy
Last active September 26, 2016 08:43
Resolution of bindings within Groovy DSL
import org.codehaus.groovy.control.CompilerConfiguration
import org.codehaus.groovy.runtime.InvokerHelper
class Bar {
String bar
void bar(String bar) {
this.bar = bar
}
}
import org.codehaus.groovy.control.CompilerConfiguration
import org.codehaus.groovy.runtime.InvokerHelper
class Bar {
String bar
void bar(String bar) {
this.bar = bar
}
}
@mrueegg
mrueegg / simpleplan.groovy
Created March 9, 2017 17:00
Example of a Groovy DSL configuring a build plan with a single stage and one job with a Maven 3 build task
project(key: 'MYPROJECT', name: 'My project') {
plan(key: 'MYPLAN', name: 'My plan') {
stage(name: 'My stage') {
description 'My stage'
manual false
job(key: 'BUILD', name: 'Maven build job' ) {
tasks {
maven3x(goal: 'install') {
description 'build plug-in'
@mrueegg
mrueegg / plan_with_repo.groovy
Last active March 9, 2017 18:02
Example of creating a global repository called "myGlobalRepo" which can then be used in the DSL to associate a build plan with it
out.println('Starting to create global Git repo...')
def gitConfig = chainCreationService.getBuildConfigurationWithDefaults()
def user = bambooUserManager.getBambooUser('admin')
def enabled = true
def webRepositoryKey = null
repositoryConfigurationService.createGlobalRepository(
'myGlobalRepo',
'com.atlassian.bamboo.plugins.atlassian-bamboo-plugin-git:git',
webRepositoryKey,
gitConfig,
@mrueegg
mrueegg / pom.xml
Created March 9, 2017 17:02
Stash REST common library Maven dependency
<dependency>
<groupId>com.atlassian.stash</groupId>
<artifactId>stash-rest-common</artifactId>
<scope>provided</scope>
</dependency>
@mrueegg
mrueegg / pom.xml
Created March 9, 2017 17:03
Atlassian REST common library Maven dependency
<dependency>
<groupId>com.atlassian.plugins.rest</groupId>
<artifactId>atlassian-rest-common</artifactId>
<scope>provided</scope>
</dependency>
@mrueegg
mrueegg / atlassian-plugin.xml
Last active March 9, 2017 17:57
atlassian-plugin.xml snippet with version strings
<atlassian-plugin key="${project.groupId}.${project.artifactId}" name="${project.name}">
<plugin-info>
<description>${project.description}</description>
<version>${project.version}</version>
@mrueegg
mrueegg / pom.xml
Last active March 9, 2017 17:58
Atlassian plug-in pom.xml version snippet
<project>
<groupId>ch.mibex.stash</groupId>
<artifactId>prp</artifactId>
<version>1.2.3</version>
@mrueegg
mrueegg / generate_openssl_key.sh
Created March 9, 2017 17:10
Create public key with OpenSSL
openssl genrsa -out yourkey.pem 1024
openssl rsa -in yourkey.pem -pubout -out yourkey.pub