{"id":18876333,"url":"https://github.com/bastilimbach/docker-scp-deployment","last_synced_at":"2026-05-10T02:41:26.113Z","repository":{"id":84290194,"uuid":"119390013","full_name":"bastilimbach/docker-scp-deployment","owner":"bastilimbach","description":"Deploy to the SAP Cloud Platform without the hassle","archived":false,"fork":false,"pushed_at":"2018-05-14T12:32:28.000Z","size":12,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-14T12:55:52.712Z","etag":null,"topics":["deployment","docker","docker-image","dockerfile","gitlab-ci","openui5","sap","sap-cloud-platform","sapui5","ui5"],"latest_commit_sha":null,"homepage":null,"language":"Shell","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/bastilimbach.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2018-01-29T14:02:21.000Z","updated_at":"2024-03-11T15:25:37.000Z","dependencies_parsed_at":"2023-03-02T00:15:51.139Z","dependency_job_id":null,"html_url":"https://github.com/bastilimbach/docker-scp-deployment","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastilimbach%2Fdocker-scp-deployment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastilimbach%2Fdocker-scp-deployment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastilimbach%2Fdocker-scp-deployment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastilimbach%2Fdocker-scp-deployment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bastilimbach","download_url":"https://codeload.github.com/bastilimbach/docker-scp-deployment/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239832433,"owners_count":19704607,"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":["deployment","docker","docker-image","dockerfile","gitlab-ci","openui5","sap","sap-cloud-platform","sapui5","ui5"],"created_at":"2024-11-08T06:12:31.634Z","updated_at":"2026-02-18T11:30:18.189Z","avatar_url":"https://github.com/bastilimbach.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker SAP Cloud Platform Deployment\nAt the moment the process to deploy an UI5 app to the SAP Cloud Platform is pretty painful.\nFirst you need to package/build your app using the MTA Builder from SAP which generates an `.mtar` file which can than be uploaded to the SCP using the SAP Neo Java Web SDK.\nTo simplify this deployment process I created a Dockerfile which contains a working version of both the Neo Java Web SDK as well as the MTA Builder so you can use this Docker image inside your CI/CD system.\n\n## Installation\nDue to the reason that the MTA Builder is only downloadable thru the SAP Software Download Center with a valid S-User I'm pretty sure that I'm not allowed to include the builder inside this Repository so you need to manually download the software and build the Docker image yourself as following:\n\n1. Download the MTA Builder from the [SAP Software Download Center](https://launchpad.support.sap.com/#/softwarecenter/template/products/_APP=00200682500000001943\u0026_EVENT=NEXT\u0026HEADER=Y\u0026FUNCTIONBAR=Y\u0026EVENT=TREE\u0026NE=NAVIGATE\u0026ENR=73554900100800000903\u0026V=MAINT\u0026TA=ACTUAL/MULTITRG%20APP%20ARCHIVE%20BUILDER)\n2. Clone this repository using `git clone https://github.com/bastilimbach/docker-scp-deployment.git`\n3. Move the MTA Builder inside the previously cloned folder and rename the file to `mta_builder.jar`\n4. Build the Docker image using `docker build --pull --compress --no-cache -t scp-deployment .`\n5. *(Optional)* Tag the image to upload it to your private Docker Registry using `docker tag scp-deployment yourRegistry.com/scp-deployment`\n6. *(Optional)* Upload the image to your private Docker Registry using `docker push yourRegistry.com/scp-deployment`\n\n\u003e You may need to log yourself into your private registry before pushing the image using `docker login`\n\n## Usage\nTo deploy your UI5 application you first need to build/package your application using the MTA Builder and the corresponding [mta.yaml descriptor file](https://help.sap.com/viewer/4505d0bdaf4948449b7f7379d24d0f0d/1.0.12/en-US/ebb42efc880c4276a5f2294063fae0c3.html). To build the `.mtar` file, simply run the following inside the container:\n```bash\n$ mta-builder --mtar yourAppName.mtar --build-target=NEO build\n```\n\nAfter a successful build you need to deploy the `.mtar` file using the following command inside the Docker container:\n```bash\n$ neo deploy-mta --user YOUR_SCP_USER --host YOUR_SCP_HOST --source yourAppName.mtar --account YOUR_SCP_SUBACCOUNT --password YOUR_SCP_PASSWORD --synchronous\n```\n\nTo get more information on the MTA Builder or the Neo Java Web SDK and there corresponding flag options go to the SAP Help Portal:\n- [MTA Builder](https://help.sap.com/viewer/58746c584026430a890170ac4d87d03b/Cloud/en-US/9f778dba93934a80a51166da3ec64a05.html)\n- [Neo Java Web SDK](https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/8900b22376f84c609ee9baf5bf67130a.html)\n\n# Examples\n## Gitlab CI\n```yaml\n# mta.yaml\n\nID: sap.ui.app.yourappname\nversion: 1.0.0\n_schema-version: 2.0.0\n\nparameters:\n   hcp-deployer-version: 1.2.0\n\nmodules:\n  - name: scp-dockerdeployment\n    type: html5\n    path: .\n    parameters:\n      display-name: Your App Name\n      version: 1.0.0--${timestamp}\n    build-parameters:\n      builder: grunt\n      build-result: dist\n```\n\n```yaml\n# .gitlab-ci.yml\n\nimage: yourRegistry/scp-deployment\nstages:\n  - build\n  - deploy\n\nbuild-mta:\n  stage: build\n  artifacts:\n    expire_in: 1 week\n    paths:\n      - ui5app.mtar\n  before_script:\n    - sed -ie \"s/\\${timestamp}/`date +%d.%m.%Y-%H%M%S`/g\" mta.yaml\n  script:\n    - mta-builder --mtar ui5app.mtar --build-target=NEO build\n  tags:\n    - build\n\ndeploy-mta:\n  stage: deploy\n  dependencies:\n    - build-mta\n  script:\n    - neo deploy-mta --user YOUR_SCP_USER --host YOUR_SCP_HOST --source yourAppName.mtar --account YOUR_SCP_SUBACCOUNT --password YOUR_SCP_PASSWORD --synchronous\n  only:\n    - master\n  tags:\n    - deploy\n```\n\n# Contribution\nPlease note that this project is released with a [Contributor Code of Conduct](https://github.com/bastilimbach/docker-scp-deployment/blob/master/CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.\n\n# License\n[MIT](https://github.com/bastilimbach/docker-scp-deployment/blob/master/LICENSE) :heart:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbastilimbach%2Fdocker-scp-deployment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbastilimbach%2Fdocker-scp-deployment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbastilimbach%2Fdocker-scp-deployment/lists"}