{"id":20811737,"url":"https://github.com/strider-cd/strider-simple-runner","last_synced_at":"2025-10-16T05:40:28.917Z","repository":{"id":4442563,"uuid":"5580904","full_name":"Strider-CD/strider-simple-runner","owner":"Strider-CD","description":"Easy-to-configure in-process Runner implementation for Strider.","archived":false,"fork":false,"pushed_at":"2024-06-16T11:41:25.000Z","size":1580,"stargazers_count":3,"open_issues_count":9,"forks_count":18,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-07T10:08:54.334Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Strider-CD.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2012-08-28T04:47:11.000Z","updated_at":"2022-01-15T15:16:12.000Z","dependencies_parsed_at":"2024-01-23T17:36:20.084Z","dependency_job_id":"88afc0a9-8fdd-4b5c-a76d-399ae13b849b","html_url":"https://github.com/Strider-CD/strider-simple-runner","commit_stats":{"total_commits":306,"total_committers":18,"mean_commits":17.0,"dds":0.6993464052287581,"last_synced_commit":"00679593eb42f507df8b29e6b64815754dbc9cb0"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Strider-CD%2Fstrider-simple-runner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Strider-CD%2Fstrider-simple-runner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Strider-CD%2Fstrider-simple-runner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Strider-CD%2Fstrider-simple-runner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Strider-CD","download_url":"https://codeload.github.com/Strider-CD/strider-simple-runner/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252856555,"owners_count":21814858,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T20:46:53.027Z","updated_at":"2025-10-16T05:40:23.889Z","avatar_url":"https://github.com/Strider-CD.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## strider-simple-runner\n\n![Worker Picture](http://farm6.staticflickr.com/5187/5883651745_c17fb322df.jpg)\n\nEasy-to-configure in-process runner implementation for Strider Continous\nDeployment. This runner comes bundled with Strider.\n\n[![Build Status](https://travis-ci.org/Strider-CD/strider-simple-runner.svg?branch=master)](https://travis-ci.org/Strider-CD/strider-simple-runner)\n\n## Spec\n\n`require('strider-simple-runner').create(emitter, config, done)`\n\n### Config\n\nAll options are optional.\n\n```\npty(false):              use 'pty' for running commands. Currently disabled\nlogger(console):         .log, .warn, .error\nio(new EventEmitter):    the channel of internal communication with the job worker\nprocessJob(core.process):function to run a job. (task, config, ondone)\npluginDirs:              the directories in which to look for plugins\ndataDir($HOME/.strider): the directory in which to clone/test/etc\nconcurrentJobs(1):       maximum number of jobs to execute at once\n```\n\n### Events\n\n#### Expected to consume\n\n- 'job.new'\n\n```\n{\n  id: Oid,\n  type: 'TEST_ONLY' | 'TEST_AND_DEPLOY',\n  user_id: Oid,\n  trigger: {\n  },\n  ref: {\n    branch: String,\n    id: String // commit id\n  },\n  // this stuff is not part of the \"job\" document in mongo, but is added\n  project: {\n    // project config straight from db, includes plugin config and\n    // project level provider config\n  },\n  userProvider: { // user-level config for the provider. Things like a github\n  }               // OAuth token. Retrieved from user.providers.[providerid]\n}\n```\n\nEx: github provider config\n\n```js\n{\n  id: 'github',\n  user: {\n    token: '1234',\n    username: 'hacker'\n  },\n  project: {\n    url: 'example.com/repo.git',\n    display_url: 'http://example.com/repo',\n    auth: {\n      method: 'https',\n      username: null, // use user's gh auth\n      password: null // use user's gh token\n    }\n  }\n}\n```\n\nEx: git provider config\n\n```js\n{\n  id: 'git',\n  user: {},\n  project: {\n    url: 'example.com/repo.git',\n    method: 'ssh',\n    privkey: null, // use repo-level ssh keys\n    pubkey: null\n  }\n}\n```\n\nProject config looks like:\n\n```js\n{\n  name: 'owner/name',\n  public: false,\n  active: true,\n  deploy_on_green: true,\n  secret: // what's this for?\n  runner: {\n    id: 'simple', // or docker, etc.\n    pty: false\n    // other config for the runner\n  },\n  privkey: '',\n  pubkey: '',\n  provider: {}, // provider config\n  // owner is implicit, as it's embedded ...\n  collaborators: [],\n  plugins: [{\n    id: 'heroku',\n    // plugin config\n  }, ...]\n}\n```\n\nPlugins needed:\n\n- heroku\n- webhooks\n\nProviders:\n\n- git\n- github\n\n# Tests\n\nStrider-simple-runner comes with tests. To run, simply execute `npm test`.\n\n# License\n\nStrider-simple-runner is released under a BSD license.\n\n# Credits\n\nPicture of worker ant CC-BY myprofe from http://www.flickr.com/photos/myprofe/5883651745/sizes/m/in/photostream/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrider-cd%2Fstrider-simple-runner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstrider-cd%2Fstrider-simple-runner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrider-cd%2Fstrider-simple-runner/lists"}