{"id":23318156,"url":"https://github.com/ibm-wm-transition/sagdevops-antcc","last_synced_at":"2025-08-22T17:30:56.052Z","repository":{"id":71466178,"uuid":"80237070","full_name":"ibm-wm-transition/sagdevops-antcc","owner":"ibm-wm-transition","description":"Software AG DevOps library to support Infrastructure as Code projects for Command Central","archived":false,"fork":false,"pushed_at":"2025-06-27T20:46:25.000Z","size":363,"stargazers_count":7,"open_issues_count":0,"forks_count":12,"subscribers_count":12,"default_branch":"release/107oct2020","last_synced_at":"2025-07-01T07:59:57.242Z","etag":null,"topics":["ant","cli","command-central","devops","webmethods"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/ibm-wm-transition.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-01-27T19:05:46.000Z","updated_at":"2025-06-27T20:46:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"16dec064-7da1-4aef-b826-2542f2f4f335","html_url":"https://github.com/ibm-wm-transition/sagdevops-antcc","commit_stats":null,"previous_names":["ibm-wm-transition/sagdevops-antcc","softwareag/sagdevops-antcc"],"tags_count":38,"template":false,"template_full_name":null,"purl":"pkg:github/ibm-wm-transition/sagdevops-antcc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibm-wm-transition%2Fsagdevops-antcc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibm-wm-transition%2Fsagdevops-antcc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibm-wm-transition%2Fsagdevops-antcc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibm-wm-transition%2Fsagdevops-antcc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ibm-wm-transition","download_url":"https://codeload.github.com/ibm-wm-transition/sagdevops-antcc/tar.gz/refs/heads/release/107oct2020","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibm-wm-transition%2Fsagdevops-antcc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271673550,"owners_count":24800711,"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","status":"online","status_checked_at":"2025-08-22T02:00:08.480Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["ant","cli","command-central","devops","webmethods"],"created_at":"2024-12-20T17:15:42.424Z","updated_at":"2025-08-22T17:30:56.036Z","avatar_url":"https://github.com/ibm-wm-transition.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Command Central Project Automation Tool\n\nAntCC is Software AG DevOps tool to support Infrastructure as Code\nprojects for Command Central.\nIt is based on well-known Apache Ant build automation framework.\n\nThe tool defines a typical Command Central Infrastructure project structure\nand provides default targets (commands) for developing and testing.\n\n## Basic Installation\n\n### Installing using Ant\n\nRequirements:\n\n* [Apache Ant 1.9.x](https://ant.apache.org/)\n* [Java 1.8.x](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)\n* Git client\n\n```bash\ngit clone https://github.com/SoftwareAG/sagdevops-antcc.git antcc\ncd antcc\nbin/antcc client\n```\n\nAdd to the PATH:\n\n```bash\nexport ANTCC_HOME=`pwd`\nexport PATH=$PATH:$ANTCC_HOME/bin\n```\n\n### Installing without Ant\n\nIf you don't Apache Ant but have Java 1.8+, you can install the tool using these commands.\n\nOn Linux and Mac OS:\n\n```bash\ncurl https://raw.githubusercontent.com/SoftwareAG/sagdevops-antcc/release/104apr2019/bootstrap/install.sh | sh\n```\n\nOn Windows:\n\n```powershell\npowershell.exe -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command \"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/SoftwareAG/sagdevops-antcc/release/104apr2019/bootstrap/install.ps1'))\"\n```\n\n## Project Structure and Default Targets\n\nComplete project structure looks like this:\n\n```bash\nbuild.xml\n\nbootstrap/\n  default.properties\n  other.properties\n\nclients/\n  default.properties\n  other.properties\n  default/\n    cc.properties\n  other/\n    cc.properties\n\nenvironments/\n   default/\n     env.properties\n   other/\n     env.properties\n\ntemplates/\n   template1/\n     template.yaml\n   template2/\n     template.yaml\n\ntests/\n  suite1/\n     test1.xml\n     test2.xml\n  test3.xml\n  test4.xml\n```\n\nMost folders and files are optional and each of them are described below.\n\n## Bootstrap\n\nANTCC tool provides generic targets to download\nand then bootstrap Command Central server, CC CLI or SPM.\nBootstrap folder is optional and allows to customize bootstrap parameters.\n\n```bash\nbootstrap\n  default.properties\n  custom.properties\n```\n\nDefault targets provided by bootstrap plugin:\n\n```bash\nant -f lib/bootstrap.xml -S\n\nOptional parameter for any target:\n\n-Dbootstrap=other                Bootstrap local Command Central server\n                                 using defaults from 'bootstrap/default.properties'\n                                 or custom 'bootstrap/other.properties'\nTargets:\n\nant boot                         Bootstrap local Command Central server\nant client                       Bootstrap local CC CLI (client)\nant agent                        Bootstrap local SPM (agent)\nant installers -Dinstallers=f1,f2 Download bootstrap installers\nant upgrade                      Upgrade local Command Central server\nant startcc                      Start local Command Central server\nant stopcc                       Stop local Command Central server\n```\n\nYou MUST bootstrap at least 'client' if not complete Command Central server\nlocally in order to execute other project targets.\n\n## Clients\n\nAfter Command Central server or client is bootstrapped the default client\nconfiguration is available for the current user, typically in ~/.sag/cc.properties file.\n\nThis configuration is used by default.\n\nIf you want your project to use a different client configuration file make a copy of\nthe configuration file and store it as client/default.properties.\n\nYou can have as many client configuration files as you need.\n\n```bash\nclients\n  default.properties\n  custom.properties\n```\n\nDefault targets provided by sagcc plugin:\n\n```bash\nant -f lib/sagcc.xml -S\n\nOptional parameter for any target:\n\n-Dcc=other                       Connection to Command Central server\n                                 using global settings in '~/.sag/cc.properties'\n                                 or project defaults from 'clients/cc.properties'\n                                 or custom 'clients/other.properties'\nTargets:\n\nant waitcc                       Wait for Command Central ready status\nant restartcc                    Restart local or remote Command Central server\nant jobs                         List recent jogs\nant killjobs                     Cancel active and remove completed jobs\nant log                          Show tail of Command Central default log\nant logs                         Show tail of agents default log\n```\n\n## Environments\n\nProject can operate with a single default environment or multiple environments.\n\nThe default environment configuration is stored in \nenvironments/default/env.properties file.\n\nFor additonal environments create a separate folder and place env.properties\nfile there. The final structure looks like this:\n\n```bash\nenvironments\n  default\n    env.properties\n  other\n    env.properties\n```\n\nAfter the environments are defined you can apply existing templates \n\nDefault targets provided by sagenv plugin:\n\n```bash\nant -f lib/sagenv.xml -S\n\nOptional parameter for any target:\n\n-Denv=other                      Environment configuration to use from\n                                 project defaults in 'environments/default/env.properties'\n                                 or custom 'environments/other/env.properties'\nTargets:\n\nant apply -Dalias=template       Apply template using its alias\n```\n\n## Templates\n\nProject normally provide custom templates, at least one.\n\nThe templates are placed under templates/ folder, each template in a separate\nfolder. The template folder must have at least template.yaml file but may provide\nany additional files to package with the template.\n\n```bash\ntemplates\n   template1\n     template.yaml\n   template2\n     template.yaml\n     otherfolder\n       otherfile\n```\n\nAfter the template(s) have been created they can be imported and applied.\n\nDefault targets provided by sagenv plugin:\n\n```bash\nant -f lib/sagenv.xml -S\n\nOptional parameter for any target:\n\n-Denv=other                      Environment configuration to use from\n                                 project defaults in 'environments/default/env.properties'\n                                 or custom 'environments/other/env.properties'\nTargets:\n\nant up                           Import and apply all project 'templates/*'\nant apply -Dalias=template       Apply template using its alias\nant import -Dt=templateFolder    Reimport template from source folder by do not apply\nant apply -Dt=templateFolder     Reimport and apply template from source folder\nant migrate -Dt=templateFolder   Reimport and migrate using template from source folder\n```\n\n## Tests\n\nYour project should have tests\n\nANTCC allows you easily define tests using [AntUnit](https://ant.apache.org/antlibs/antunit/) framework.\n\nCreate AntUnit tests and save them as tests/test*.xml files.\n\n```bash\ntests\n  test1.xml\n  test2.xml\n```\n\nDefault targets provided by sagtest.xml plugin:\n\n```bash\nant -f lib/sagtest.xml -S\n\nOptional parameter for any target:\n\n-Dsuite=some                     Run only tests from 'tests/some/*' folder\n\nTargets:\n\nant test                         Run tests/test*.xml AntUnit tests\n\n```\n\n# Enabling your project for Infrastructure automation\n\nCreate the project folder or cd into existing project\n\n```bash\nmkdir ~/myproj1\ncd ~/myproj1\n```\n\n## Add optional build.xml\n\nThe project does NOT have to have build.xml file in its root. In this case $ANTCC_HOME/build.xml will be used.\n\nThe project MAY extend default $ANTCC_HOME/build.xml by placing build.xml with the following content in the project root:\n\n```xml\n\u003c?xml version=\"1.0\"?\u003e\n\u003cproject\u003e\n  \u003cproperty environment=\"env\" /\u003e\n  \u003ccondition property=\"antcc.home\" value=\"${env.ANTCC_HOME}\" else=\"antcc\"\u003e\n    \u003cisset property=\"env.ANTCC_HOME\"/\u003e\n  \u003c/condition\u003e\n  \u003cimport file=\"${antcc.home}/build.xml\" /\u003e\n\n\u003c/project\u003e\n```\n\nThe import provides access to default ANTCC targets and is enough to start using\nthe project, however more often you will add your own automation targets to this\nmain build.xml script.\n\nThe build.xml is a standard Apache Ant script you can use all the facilities\nthat Ant provides for writing cross-platform automation scripts by leveraging\n\n* Generic targets imported from ANTCC\n* Any Command Central REST API available via CC CLI commands\n* Any generic automation facilities provided by Ant tasks and libraries\n* Any 3-rd party tooling that provide CLI or API\n\n## Embedding antcc\n\nFor GIT based automation projects you MAY include ANTCC as a submodule\n\n```bash\ngit submodule add https://github.com/SoftwareAG/sagdevops-antcc.git antcc\n```\n\nThis makes the project completely independend and does not require antcc installed on the host.\n\n## Create bootstrap configuration file, customize as needed\n\n```bash\nmkdir -p bootstrap\ncat \u003c\u003cEOF \u003e bootstrap/default.properties\naccept.license=true\ninstaller=cc-def-9.12-fix2-\\${platform}\ninstall.dir=\\${user.home}/sag/cc\ncce.http.port=8090\ncce.https.port=8091\nspm.http.port=8092\nspm.https.port=8093\nEOF\n```\n\nIMPORTANT: By setting ```accept.license=true``` property you are accepting [End User License Agreement](http://documentation.softwareag.com/legal/general_license.txt)\n\nDownload the bootstrap installer from [Empower](https://empower.softwareag.com/Products/DownloadProducts/sdc/default.asp) \nand save it under ~/Downloads folder\n\nRun bootstrap process\n\n```bash\nant boot\n```\n\nVerify connection\n\n```bash\nant jobs\n```\n\nCreate basic template\n\n```bash\nmkdir templates/default\ncat \u003c\u003cEOF \u003e templates/default/template.yaml\nalias: default\nenvironments:\n  default:\n    foo: bar\nEOF\n```\n\nCreate default environment configuration\n\n```bash\nmkdir environments/default\ncat \u003c\u003cEOF \u003e environments/default/env.properties\nfoo=baz\nEOF\n```\n\nApply template, check logs and jobs\n\n```bash\nant up\nant jobs log logs\n```\n\n## Working with remote servers\n\nCreate default or custom client configuration file\n\n```bash\nmkdir -p clients/default\ncat \u003c\u003cEOF \u003e clients/default/cc.properties\nserver=http://localhost:8090\nusername=Administrator\npassword=manage\ncc.cli.home=\\${user.home}/sag/cc/CommandCentral/client\nEOF\n```\n\nAny command will now execute against this remote server by default.\n\n```bash\nant waitcc up jobs log logs\n```\n\n_____________\nContact us at [TECHcommunity](mailto:technologycommunity@softwareag.com?subject=Github/SoftwareAG) if you have any questions.\n_____________\nThese tools are provided as-is and without warranty or support. They do not constitute part of the webMethods product suite. Users are free to use, fork and modify them, subject to the license agreement. While we welcome contributions, we cannot guarantee to include every contribution in the master project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibm-wm-transition%2Fsagdevops-antcc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fibm-wm-transition%2Fsagdevops-antcc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibm-wm-transition%2Fsagdevops-antcc/lists"}