{"id":18263856,"url":"https://github.com/atomist/sdm","last_synced_at":"2025-04-06T01:05:57.914Z","repository":{"id":28649022,"uuid":"118969370","full_name":"atomist/sdm","owner":"atomist","description":"Atomist Software Delivery Machine framework","archived":false,"fork":false,"pushed_at":"2021-10-04T07:05:24.000Z","size":26603,"stargazers_count":176,"open_issues_count":0,"forks_count":20,"subscribers_count":17,"default_branch":"main","last_synced_at":"2024-04-15T01:10:21.328Z","etag":null,"topics":["atomist","node","software-delivery-machine","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/atomist.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2018-01-25T21:23:17.000Z","updated_at":"2024-01-25T05:08:44.000Z","dependencies_parsed_at":"2022-08-07T14:00:30.015Z","dependency_job_id":null,"html_url":"https://github.com/atomist/sdm","commit_stats":null,"previous_names":[],"tags_count":4004,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atomist%2Fsdm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atomist%2Fsdm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atomist%2Fsdm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atomist%2Fsdm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/atomist","download_url":"https://codeload.github.com/atomist/sdm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247419859,"owners_count":20936012,"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":["atomist","node","software-delivery-machine","typescript"],"created_at":"2024-11-05T11:12:54.949Z","updated_at":"2025-04-06T01:05:57.884Z","avatar_url":"https://github.com/atomist.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://images.atomist.com/sdm/SDM-Logo-Dark.png\"\u003e\n\u003c/p\u003e\n \n# Software Delivery Machine - `@atomist/sdm`\n\nThis is the home of the Software Delivery Machine (SDM) framework and\nrelated projects.\n\nThe SDM framework enables you to control your delivery process in\ncode. Think of it as an API for your software delivery. See the\n[Atomist SDM documentation][atomist-doc] for more information on the\nconcept of a software delivery machine and how to create and develop\nan SDM.\n\n[atomist-doc]: https://docs.atomist.com/ \"Atomist Documentation\"\n\n## Migrating to SDM 2.0\n\nSDM version 2.0 aims to make it easier to use the SDM framework. We\nhave consolidated the most useful NPM packages under\n[@atomist/sdm][sdm-npm] to simplify dependency management. Rather\nthan separately installing @atomist/automation-client,\n@atomist/sdm-core, and various @atomist/sdm-pack-\\*, you now just\ninstall @atomist/sdm. @atomist/sdm-local is deprecated.\n\nTo update to the new single package in your SDM, follow these steps:\n\n1.  Remove Atomist SDM and automation-client dependencies\n\n        $ npm uninstall @atomist/automation-client @atomist/sdm @atomist/sdm-core @atomist/sdm-local\n\n2.  Remove any extension SDM packs\n\n        $ npm uninstall @atomist/sdm-pack-ABC @atomist/sdm-pack-DEF @atomist/sdm-pack-GHI\n\n3.  Reinstall Atomist SDM\n\n        $ npm install @atomist/sdm\n\n4.  The consolidation of packages introduces a breaking change: you must\n    update your import statements. Specifically:\n\n    -   Change `import … \"@atomist/automation-client\"` to `import … \"@atomist/sdm/lib/client\"`\n    -   Change `import … \"@atomist/sdm-core\"` to `import … \"@atomist/sdm/lib/core\"`\n    -   Change `import … \"@atomist/sdm-pack-spring\"` to `import … \"@atomist/sdm/lib/pack/jvm\"`\n    -   Change `import … \"@atomist/sdm-pack-XYZ\"` to `import … \"@atomist/sdm/lib/pack/XYZ\"`\n\n5.  `EditMode` in automation-client is now `editModes.EditMode` in `import { editModes } from \"@atomist/sdm/lib/client\"`\n\n6.  Some packs that were part of sdm-core have been relocated under\n    `sdm/lib/pack`, so their imports change like these:\n\n        import { githubGoalStatusSupport } from \"@atomist/sdm/lib/pack/github-goal-status\";\n        import { goalStateSupport } from \"@atomist/sdm/lib/pack/goal-state\";\n        import { notificationSupport } from \"@atomist/sdm/lib/pack/notification\";\n\n7.  Deprecated exports have been removed from SDM 2.0. If you need\n    help moving away from capabilities that have been removed, please\n    [contact us](#support).\n\n[sdm-npm]: https://www.npmjs.com/package/@atomist/sdm\n\n## Contributing\n\nContributions to this project from community members are encouraged\nand appreciated. Please review the [Contributing\nGuidelines](CONTRIBUTING.md) for more information. Also see the\n[Development](#development) section in this document.\n\n## Code of conduct\n\nThis project is governed by the [Code of\nConduct](CODE_OF_CONDUCT.md). You are expected to act in accordance\nwith this code by participating. Please report any unacceptable\nbehavior to code-of-conduct@atomist.com.\n\n## Documentation\n\nPlease see [docs.atomist.com][atomist-doc] for\n[developer][atomist-doc-sdm] documentation.\n\n-   API documentation for this project: [@atomist/sdm TypeDoc][typedoc]\n-   List of third-party OSS licenses used in this project: [@atomist/sdm OSS licenses][licenses]\n\n[atomist-doc-sdm]: https://docs.atomist.com/developer/sdm/ \"Atomist Documentation - SDM Developer\"\n[typedoc]: https://atomist.github.io/sdm/ \"@atomist/sdm TypeDoc\"\n[licenses]: legal/THIRD_PARTY.md \"@atomist/sdm Third-Party Licenses\"\n\n## Connect\n\nFollow [@atomist][atomist-twitter] and [The Composition][atomist-blog]\nblog related to SDM.\n\n[atomist-twitter]: https://twitter.com/atomist \"Atomist on Twitter\"\n[atomist-blog]: https://the-composition.com/ \"The Composition - The Official Atomist Blog\"\n\n## Support\n\nGeneral support questions should be discussed in the `#help`\nchannel in the [Atomist community Slack workspace][slack].\n\nIf you find a problem, please create an [issue][].\n\n[issue]: https://github.com/atomist/sdm/issues\n\n## Development\n\nYou will need to install [Node.js][node] to build and test this\nproject.\n\n[node]: https://nodejs.org/ \"Node.js\"\n\n### Build and test\n\nInstall dependencies.\n\n```\n$ npm install\n```\n\nUse the `build` package script to compile, test, lint, and build the\ndocumentation.\n\n```\n$ npm run build\n```\n\n### Release\n\nReleases are handled via the [Atomist SDM][atomist-sdm]. Just press\nthe 'Approve' button in the Atomist dashboard or Slack.\n\n[atomist-sdm]: https://github.com/atomist/atomist-sdm \"Atomist Software Delivery Machine\"\n\n---\n\nCreated by [Atomist][atomist].\nNeed Help? [Join our Slack workspace][slack].\n\n[atomist]: https://atomist.com/ \"Atomist - Automate All the Software Things\"\n[slack]: https://join.atomist.com/ \"Atomist Community Slack\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatomist%2Fsdm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatomist%2Fsdm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatomist%2Fsdm/lists"}