Skip to content
Ben-Noah Engelhaupt edited this page Jul 25, 2019 · 1 revision

Overview

  1. Required Packages
  2. JSON usage
  3. API
    1. Repository Info
    2. Build History
    3. Build Info
    4. Job Info
    5. Logs

Required Packages

 MCHttpRepository
	location: 'http://www.squeaksource.com/JSON'
	user: ''
	password: ''

##JSON usage

| json |
json := Json readFrom: '{"hello":["world", "world!"]}' readStream.
(json at: 'hello') = #('world' 'world!').
(json at: 'hello') first = 'world'

API

Repository Info

TravisCIClient new
	getJsonForRepository: 'SWTI2014/SWTI2014-Project-05';		"repository.slug"

Sample JSON:

{
	"repo":{
		"id":2184014,
		"slug":"SWTI2014/SWTI2014-Project-05",
		"description":"AutoTDD and Travis-CI",
		"last_build_id":25590080,
		"last_build_number":"54",
		"last_build_state":"failed",
		"last_build_duration":462,
		"last_build_language":null,
		"last_build_started_at":"2014-05-20T10:22:06Z",
		"last_build_finished_at":"2014-05-20T10:26:22Z",
		"github_language":"Smalltalk"
	}
}

Build History

TravisCIClient new
	getJsonForBuildsOfRepository: 'SWTI2014/SWTI2014-Project-05';		"repository.slug"

Sample JSON:

{
	"builds":[
		{
			"id":25590080,
			"repository_id":2184014,
			"commit_id":7393071,
			"number":"54",
			"pull_request":false,
			"pull_request_title":null,
			"pull_request_number":null,
			"config":{
				"language":"erlang",
				"env":[
					"ST=Squeak-4.5",
					"ST=Squeak-Trunk"
				],
				"install":[
					"export PROJECT_HOME=\"$(pwd)\"",
					"cd $HOME",
					"wget -q -O builderCI.zip https://github.com/SWTI2014/builderCI/zipball/master",
					"unzip -q builderCI.zip",
					"cd SWTI2014-builderCI*",
					"source build_env_vars",
					"ln -s $PROJECT_HOME $GIT_PATH",
					"./build_image.sh"
				],
				"script":"$BUILDER_CI_HOME/testTravisCI.sh",
				".result":"configured",
				"os":"linux"
			},
			"state":"failed",
			"started_at":"2014-05-20T10:22:06Z",
			"finished_at":"2014-05-20T10:26:22Z",
			"duration":462,
			"job_ids":[
				25590081,
				25590082
			]
		},
		{
			"id":25584007,
			"repository_id":2184014,
			"commit_id":7391226,
			"number":"53",
			"pull_request":false,
			"pull_request_title":null,
			"pull_request_number":null,
			"config":{
				"language":"erlang",
				"env":[
					"ST=Squeak-4.5",
					"ST=Squeak-Trunk"
				],
				"install":[
					"export PROJECT_HOME=\"$(pwd)\"",
					"cd $HOME",
					"wget -q -O builderCI.zip https://github.com/SWTI2014/builderCI/zipball/master",
					"unzip -q builderCI.zip",
					"cd SWTI2014-builderCI*",
					"source build_env_vars",
					"ln -s $PROJECT_HOME $GIT_PATH",
					"./build_image.sh"
				],
				"script":"$BUILDER_CI_HOME/testTravisCI.sh",
				".result":"configured",
				"os":"linux"
			},
			"state":"failed",
			"started_at":"2014-05-20T08:45:13Z",
			"finished_at":"2014-05-20T08:49:55Z",
			"duration":473,
			"job_ids":[
				25584008,
				25584009
			]
		},
		...
	],
	"commits":[
		{
			"id":7393071,
			"sha":"77f8c8048f50e25f927f559cd3d8c20a2d4fb0b9",
			"branch":"master",
			"message":"Added instvar webClient\nAdded API for logs",
			"committed_at":"2014-05-20T10:20:54Z",
			"author_name":"Philipp Schirmer",
			"author_email":"[email protected]",
			"committer_name":"Philipp Schirmer",
			"committer_email":"[email protected]",
			"compare_url":"https://github.com/SWTI2014/SWTI2014-Project-05/compare/87e6301af7a0...77f8c8048f50",
			"pull_request_number":null
		},
		{
			"id":7391226,
			"sha":"c8e544bdb9e2621387bc77f0177403da39e024b6",
			"branch":"Travis/SqueakSSL&WebClient",
			"message":"Enabled Delay/Reverted .travis.yml",
			"committed_at":"2014-05-20T08:44:29Z",
			"author_name":"Philipp Schirmer",
			"author_email":"[email protected]",
			"committer_name":"Philipp Schirmer",
			"committer_email":"[email protected]",
			"compare_url":"https://github.com/SWTI2014/SWTI2014-Project-05/compare/cfde369de66f...c8e544bdb9e2",
			"pull_request_number":null
		},
		...
	]
}

Build Info

TravisCIClient new
	getJsonForBuild: '25584007'.		"build.id"

Sample JSON:

{
	"build":{
		"id":25584007,
		"repository_id":2184014,
		"commit_id":7391226,
		"number":"53",
		"pull_request":false,
		"pull_request_title":null,
		"pull_request_number":null,
		"config":{
			"language":"erlang",
			"env":[
				"ST=Squeak-4.5",
				"ST=Squeak-Trunk"
			],
			"install":[
				"export PROJECT_HOME=\"$(pwd)\"",
				"cd $HOME",
				"wget -q -O builderCI.zip https://github.com/SWTI2014/builderCI/zipball/master",
				"unzip -q builderCI.zip",
				"cd SWTI2014-builderCI*",
				"source build_env_vars",
				"ln -s $PROJECT_HOME $GIT_PATH",
				"./build_image.sh"
			],
			"script":"$BUILDER_CI_HOME/testTravisCI.sh",
			".result":"configured",
			"os":"linux"
		},
		"state":"failed",
		"started_at":"2014-05-20T08:45:13Z",
		"finished_at":"2014-05-20T08:49:55Z",
		"duration":473,
		"job_ids":[
			25584008,
			25584009
		]
	},
	"commit":{
		"id":7391226,
		"sha":"c8e544bdb9e2621387bc77f0177403da39e024b6",
		"branch":"Travis/SqueakSSL&WebClient",
		"message":"Enabled Delay/Reverted .travis.yml",
		"committed_at":"2014-05-20T08:44:29Z",
		"author_name":"Philipp Schirmer",
		"author_email":"[email protected]",
		"committer_name":"Philipp Schirmer",
		"committer_email":"[email protected]",
		"compare_url":"https://github.com/SWTI2014/SWTI2014-Project-05/compare/cfde369de66f...c8e544bdb9e2"
	},
	"jobs":[
		{
			"id":25584008,
			"repository_id":2184014,
			"build_id":25584007,
			"commit_id":7391226,
			"log_id":15830287,
			"state":"failed",
			"number":"53.1",
			"config":{
				"language":"erlang",
				"env":"ST=Squeak-4.5",
				"install":[
					"export PROJECT_HOME=\"$(pwd)\"",
					"cd $HOME",
					"wget -q -O builderCI.zip https://github.com/SWTI2014/builderCI/zipball/master",
					"unzip -q builderCI.zip",
					"cd SWTI2014-builderCI*",
					"source build_env_vars",
					"ln -s $PROJECT_HOME $GIT_PATH",
					"./build_image.sh"
				],
				"script":"$BUILDER_CI_HOME/testTravisCI.sh",
				".result":"configured"
			},
			"started_at":"2014-05-20T08:45:44Z",
			"finished_at":"2014-05-20T08:48:55Z",
			"queue":"builds.linux",
			"allow_failure":false,
			"tags":null,
			"annotation_ids":[
			]
		},
		{
			"id":25584009,
			"repository_id":2184014,
			"build_id":25584007,
			"commit_id":7391226,
			"log_id":15830288,
			"state":"failed",
			"number":"53.2",
			"config":{
				"language":"erlang",
				"env":"ST=Squeak-Trunk",
				"install":[
					"export PROJECT_HOME=\"$(pwd)\"",
					"cd $HOME",
					"wget -q -O builderCI.zip https://github.com/SWTI2014/builderCI/zipball/master",
					"unzip -q builderCI.zip",
					"cd SWTI2014-builderCI*",
					"source build_env_vars",
					"ln -s $PROJECT_HOME $GIT_PATH",
					"./build_image.sh"
				],
				"script":"$BUILDER_CI_HOME/testTravisCI.sh",
				".result":"configured"
			},
			"started_at":"2014-05-20T08:45:13Z",
			"finished_at":"2014-05-20T08:49:55Z",
			"queue":"builds.linux",
			"allow_failure":false,
			"tags":null,
			"annotation_ids":[
			]
		}
	],
	"annotations":[
	]
}

Job Info

TravisCIClient new
	getJsonForJob: '24717060'.		"job.id"

Sample JSON:

{
	"job":{
		"id":24717060,
		"repository_id":2184014,
		"repository_slug":"SWTI2014/SWTI2014-Project-05",
		"build_id":24717058,
		"commit_id":7146276,
		"log_id":15187556,
		"number":"7.2",
		"config":{
			"language":"erlang",
			"env":"ST=Squeak-4.5",
			"install":[
				"export PROJECT_HOME=\"$(pwd)\"",
				"cd $HOME",
				"wget -q -O builderCI.zip https://github.com/SWTI2014/builderCI/zipball/master",
				"unzip -q builderCI.zip",
				"cd SWTI2014-builderCI*",
				"source build_env_vars",
				"ln -s $PROJECT_HOME $GIT_PATH",
				"./build_image.sh"
			],
			"script":"$BUILDER_CI_HOME/testTravisCI.sh",
			".result":"configured"
		},
		"state":"failed",
		"started_at":"2014-05-08T14:39:03Z",
		"finished_at":"2014-05-08T14:42:18Z",
		"queue":"builds.linux",
		"allow_failure":false,
		"tags":null,
		"annotation_ids":[
		]
	},
	"commit":{
		"id":7146276,
		"sha":"8c135b6527029fb343b0a2d70ca7b0a0ebed2bb0",
		"branch":"master",
		"message":"Background/foreground button\n\nadded test for background/foreground (currently not working)\nforeground not working correctly",
		"committed_at":"2014-05-08T14:37:32Z",
		"author_name":"s23l",
		"author_email":"[email protected]",
		"committer_name":"s23l",
		"committer_email":"[email protected]",
		"compare_url":"https://github.com/SWTI2014/SWTI2014-Project-05/compare/470290f4684a...8c135b652702"
	},
	"annotations":[
	]
}

Logs

TravisCIClient new
	getJsonForLog: '15830287'.		"log.id"

Sample JSON:

{
	"log":{
		"id":15830287,
		"job_id":25584008,
		"type":"Log",
		"body":"[actual log]"
	}
}