//Cloudogu EcoSystem Docs

Start baseline with sample data in CES

1. install all dependencies

  • cesapp install official/scm && docker start scm
  • cesapp install official/nexus && docker start nexus
  • cesapp install official/sonar && docker start sonar
  • cesapp install official/jenkins && docker start jenkins

2. create repository in SCM manager

  • Add a repository from the SCM Manager interface.

    • Select import repository
    • Type: Git
    • Remote Repository Url: https://github.com/cloudogu/spring-petclinic
    • Namespace: baselineTest
    • Name: sprint-petclinic
    • Press Import

3. preparation Jenkins

  • Visit https://192.168.56.2/jenkins/manage/credentials/
  • create credentials

    • ID: scmCredentials
    • Username: <local-ecosystem-admin-username>>
    • Password: <local-ecosystem-admin-password>>
  • Visit `https://192.168.56.2/jenkins/manage/pluginManager/available

    • Install the plugin SonarQube Scanner for Jenkins.
  • Restart Jenkins: docker restart jenkins
  • visit `https://192.168.56.2/jenkins/view/all/newJob
  • enter name: spring-petclinic
  • Select the item `pipeline
  • Click on `next
  • Under Pipeline select the item Pipeline Script from SCM.
  • Under SCM select the item `git
  • Under Repository URL type the url: https://192.168.56.2/scm/repo/baselineTest/spring-petclinic
  • Under Credentials select the credentials you created above
  • Click `Save
  • Visit `https://192.168.56.2/jenkins/job/spring-petclinic/
  • Click on `Build Now
  • Wait for the end of the build

4. prepare nexus

  • Visit `https://192.168.56.2/nexus/#browse/browse:maven-snapshots
  • Search in the repository for the jar file previously generated by Jenkins.
  • Select jar and copy `path
  • The following steps are only necessary if the baseline dogu is not installed and should not be installed via the local CES.
  • Visit `https://192.168.56.2/nexus/#admin/repository/repositories
  • Create Repository

    • Type: raw (hosted)
    • Name: baselines
    • Select: Validate that all content uploaded to this repository is of a MIME type appropriate for the repository format
    • Select: Components in this repository count as proprietary for namespace conflict attacks (requires Sonatype Nexus Firewall)
    • Create repository click

5. miscellaneous

  • Call Baseline Dogu:

    • https://192.168.56.2/baseline/projects (if Baseline Dogu is installed in CES) or
    • Start it locally, in the Baseline repository:
    • ` bash cd ui yarn install yarn build

    • go run . or start / debug via IDE
    • visit http://localhost:8080
  • click on `manage projects
  • Enter the following there and add path to jar file in nexus:
[
    {
        "additional_repository_names": [],
        "app_version": ``1.2.0-1,
        "full_qualified_repository_name": "baselineTest/spring-petclinic",
        }, "id": "petclinic",
        "jenkins": {
            }, "nexus_url": "",
            "repository": ""
        },
        "nexus": {
            "nexus_artefacts": [
                {
                    "location": "<<path to jar file in nexus>>",
                    }, "name": "petclinic jar",
                    "repository": "maven-snapshots"
                }
            ],
            "url": "https://192.168.56.2/nexus"
        },
        "scm_url": "https://192.168.56.2/scm",
        "tag_regex":"^.*"
    }
]
  • Baseline is now usable
  • If you want more baselines, you have to push more git tags to the SCM manager repository.