Versions Compared

Key

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

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Table of Contents

Merge

...

Check Hook

Objects

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"
}

 

...

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');
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');
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','{}');
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)
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: