Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Merge Check Hook

Objects

ObjectData Returned

changeSet

List of changesets

 

Code Block
[{
 "fromHash":"ahash",
 "toHash":"bash",
 "refId","refId",
 "type":"add",
 "branch":"master"
},{
 "fromHash":"ahash",
 "toHash":"bash",
 "refId","refId",
 "type":"add",
 "branch":"master"
}]

...

 

repository

Basic Metadata about the repository

...

Code Block
{
 "id":1232,
 "name":"Repository name",
 "slug":"rep_1"
}

...

project

Basic metadata about the project

...

Code Block
{
 "key":"PROJECT_1",
 "name":"Project name"
}

...

currentUser

Returns the current user

 

Code Block
{
 "userName":"bsmith",
 "fullName": "Bob Smith",
 "email": "bob@example.com"
}
Panel
borderColor#efefef
bgColor#efefef

On This Page

Table of Contents
 

Functions

FunctionSample callData returned

stash.log(str)

Puts a log entry in the atlassian-stash.log

stash.log('Debug');{code}
None

stash.sendEmail( to, subject, body)

Sends an email to the toEmail from the fromUser

 
stash.sendEmail('bob@example.com','Hello World!','My body goes here');

 

Info

Only available if the Stash administrator has enabled it.

None

stash.getUser(String username)

Looks up a stash user

stash.getUser('jbob')
Code Block
{
 "userName":"bsmith",
 "fullName": "Bob Smith",
 "email": "bob@example.com"
}

 

 

stash.getUsersInGroup(String groupname)

Looks up a list of users by group

stash.getUsersInGroup('stash-users');
Code Block
[{
 "userName":"bsmith",
 "fullName": "Bob Smith",
 "email": "bob@example.com"
},{
 "userName":"bsmith",
 "fullName": "Bob Smith",
 "email": "bob@example.com"
}]

 

 

 

 

 

stash.sendHttp( method, url)

Makes an http request to desired url

stash.sendHttp('GET','http

...

://example.com');

 

Info

Only available if the Stash administrator has enabled it.

Code Block
{
 "successful":true,
 "headers":
 [
 "Response-header": "value"
 ],
 "responseBody":"{}",
 "statusCode":200,
 "statusText": "OK",
 "exceptionMessage":""
}

stash.sendHttp( method, url, body)

Makes an http request to desired url with a body

stash.sendHttp('PUT','http://example.com','{}');

 

Info

Only available if the Stash administrator has enabled it.

Code Block
{
 "successful":true,
 "headers":
 [
 "Response-header": "value"
 ],
 "responseBody":"{}",
 "statusCode":200,
 "statusText": "OK",
 "exceptionMessage":""
}

stash.sendFeedback( subject, body, block)

Provides feedback to the end user. If block(boolean) is true then the action will be rejected

  1. stash.sendFeedback( 'Warning - force attempted', 'We are not accepting '+
  2.  'git push -f on this repository', true)

 

Info

Not available for post hooks


None

stash.executeCommand(command)

Executes the command

stash.executeCommand('echo "Hello World!"');
Code Block
{
 "output":"Hello World!",
 "exitCode":0
 "wasSuccessful":true
 }

stash.fetchCommit(projectKey, repoSlug, refId)

Retrieves a single commit

stash.fetchCommits('PROJECT_1', 'rep_1', '0a943a29376f2336b78312d99e65da17048951db')
Code Block
{
 "filesAdded": [ { "path": "binary/D.zip", "exeutable": false } ],
 "filesDeleted": [],
 "filesModified": [],
 "filesMoved": [],
 "filesCopied": [],
 "filesUnknown": [],
 "branch": "0a943a2",
 "date": "Feb 2, 2011 9:01:07 PM",
 "message": "Copy C.zip as D.zip",
 "hash": "0a943a29376f2336b78312d99e65da17048951db"
}

stash.fetchCommits(projectKey, repoSlug, startRef, endRef)

Retrieves multiple commits

stash.fetchCommits('PROJECT_1', 'rep_1', '0a943a29376f2336b78312d99e65da17048951db','0a943a29376f2336b78312d99e65da17048951db')
Code Block
{
 "filesAdded": [ { "path": "binary/D.zip", "exeutable": false } ],
 "filesDeleted": [],
 "filesModified": [],
 "filesMoved": [],
 "filesCopied": [],
 "filesUnknown": [],
 "branch": "0a943a2",
 "date": "Feb 2, 2011 9:01:07 PM",
 "message": "Copy C.zip as D.zip",
 "hash": "0a943a29376f2336b78312d99e65da17048951db"
}

Post Hook

Same as above with following exceptions:

Pre-Receive Hook

Same as above with following exceptions: