{"id":15955289,"url":"https://github.com/vsilverman/jenkins-ci","last_synced_at":"2025-03-18T00:30:24.194Z","repository":{"id":39364786,"uuid":"157330337","full_name":"vsilverman/jenkins-ci","owner":"vsilverman","description":"This repo shows how to use docker, jenkins and maven to build, test and deploy java app","archived":false,"fork":false,"pushed_at":"2024-04-13T07:00:07.000Z","size":257,"stargazers_count":3,"open_issues_count":3,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-14T04:06:55.266Z","etag":null,"topics":["continuous-integration","docker","docker-image","java","jenkins","pipeline","python","terraform"],"latest_commit_sha":null,"homepage":"https://vsilverman.github.io/jenkins-ci/","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vsilverman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"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},"funding":{"community_bridge":"jenkins","custom":["https://jenkins.io/donate/#why-donate"]}},"created_at":"2018-11-13T06:18:53.000Z","updated_at":"2024-04-15T08:25:09.284Z","dependencies_parsed_at":"2023-12-05T09:24:52.219Z","dependency_job_id":"e792ed7d-1d9d-406c-88b1-b997e9f2542a","html_url":"https://github.com/vsilverman/jenkins-ci","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vsilverman%2Fjenkins-ci","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vsilverman%2Fjenkins-ci/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vsilverman%2Fjenkins-ci/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vsilverman%2Fjenkins-ci/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vsilverman","download_url":"https://codeload.github.com/vsilverman/jenkins-ci/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243893536,"owners_count":20364914,"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":["continuous-integration","docker","docker-image","java","jenkins","pipeline","python","terraform"],"created_at":"2024-10-07T13:22:17.990Z","updated_at":"2025-03-18T00:30:23.912Z","avatar_url":"https://github.com/vsilverman.png","language":"HCL","funding_links":["https://funding.communitybridge.org/projects/jenkins","https://jenkins.io/donate/#why-donate"],"categories":[],"sub_categories":[],"readme":"# Demo of Continuous Integration\n\nThis repo shows how to use dockerized jenkins to build, test and deploy java and python apps. For testing java app this demo is using maven and python app is tested with pytest.\n\n## Steps to Execute This Demo\n\n- Clone this sample by using e.g. the following command:\n\n            git clone \u003cgit-address-of-this-repo\u003e\n\n- Build your own ubuntu based docker image and install on it all needed components,\nincluding java, jenkins, etc.:\n\n            docker build -t \u003cimage-you-are-building\u003e .\n\n- Advantage of above approach - you have full control of what\nto include in your newly built image. You need to remember though to install\njenkins blue ocean plugins, required for this demo.\n\n- Alternative approach is to use the pre-built docker image with already\ninstalled jenkins blue-ocean plugins. For doing this run from the terminal window:\n\n            ./dkr-jenkinsci-start.sh\n\n- After container starts get Jenkins admin password from another terminal window:\n\n            docker cp my-jenkins-ci:/var/jenkins_home/secrets/initialAdminPassword .\n            cat initialAdminPassword\n\n- Point your browser to \u003chttps://localhost:8080\u003e and unlock Jenkins by entering\nobtained admin password.  After that create a new admin user with demo/demo\n(login_name/password) credentials.\n\n- Now you can build and test a Java app, which will demo automatic authentication\nwith newly created Jenkins account. To do this simply run the following command:\n\n            mvn clean package\n\n- Create a new Pipeline job in Jenkins.  Configure this Pipeline by entering under\n\"Repository URL\" : \"/home/jenkins-ci/\" and under \"Script Path\" : \"Jenkinsfile\".\nSave configured job and run it.\n\n- While a pipeline job is running click on \"Open Blue Ocean\" link and verify that\nall tests are passed and that current build of the app is ready for demonstration.\n\n- After executing this demo you can test entire project against running instance\nof Jenkins.  For executing such tests inside e.g. InteliJ IDE do the following:\n  - import IntelliJ settings of this project\n  - right click on test-\u003ejava-\u003ecom.mycompany.app\n  - select 'Run all tests'. Tests will be executed using JUnit and Cucumber frameworks.\n  - observe results and duration of every test.\n\n- To simplify execution of this demo and visualize entire process you may follow\na more detailed overview document, located at this\n[Continuous Integration Page][https://github.com/vsilverman/jenkins-ci/wiki/Jenkins-Continuos-Integration]\n\n- Above demo shows example of building customized docker images\nand including those in multi-platform CI/CD process using declarative\nJenkins pipeline. In case you need to include in the pipeline\ndeployment process for the built image - follow current project\ninstructions on using terraform for\n[building deployment infrastructure](https://github.com/vsilverman/jenkins-ci/tree/master/terraform).\nAnd in case you need to build DevOps and Test environments\nusing other infrastructure-as-a-code tools - you may follow\n[Insight project instructions](https://github.com/vsilverman/insight)\n\n- Remember that described above process and documentation may be always\nused as a template. In case you need to meet certain other\ngoals - just integrate current framework with proper data\npipeline or piece of software, build new app and rerun the\nentire demo.\n\n[https://github.com/vsilverman/jenkins-ci/wiki/Jenkins-Continuos-Integration]: https://github.com/vsilverman/jenkins-ci/wiki/Jenkins-Continuos-Integration","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvsilverman%2Fjenkins-ci","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvsilverman%2Fjenkins-ci","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvsilverman%2Fjenkins-ci/lists"}