在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称(OpenSource Name):dzuluagaapigee/apigee-ci-jenkins-git-maven-jmeter开源软件地址(OpenSource Url):https://github.com/dzuluagaapigee/apigee-ci-jenkins-git-maven-jmeter开源编程语言(OpenSource Language):HTML 100.0%开源软件介绍(OpenSource Introduction):Table of Contents generated with DocToc
Enable Continuous Integration on Apigee EdgeThe purpose of this repo is to provide a step-by-step guide to enable Apigee Edge bundle deployment on Jenkins for Continuous Integration and Deployment. Install Virtual BoxDownload Virtual Box. This step is required to run Vagrant. Install Jenkins Vagrant Boxrun Optional - Jenkins on CloudbeesAn alternative to install Jenkins on a Virtual Machine is to leverage services from a cloud provider such as Cloudbees. You can signup for free for 200 build minutes. This environment has been tested successfuly so far. Install Jenkins PluginsInstall Plugins with install-jenkins-plugins.shafter running
Hide passwords and sensitive dataMask Passwords Plugin has been installed as part of install-jenkins-plugins.sh. To setup got to Manage Jenkins > Configure System > Mask Passwords - Parameters to automatically mask, Add global passwords. In this case add ae_username and ae_password. These variables will be used from Grunt.js Deploy plugins to deploy bundles to Apigee Edge. Unfortunately, at this point Maven for Jenkins doesn't support Mask Passwords. Alternative solution described below. Install MavenPoint your browser to https://127.0.0.1:8088 on the host OS, Go to Manage Jenkins > Configure System > Maven and pick Maven 3.0.5. Make sure Install Automatically checkbox is ticked. Create a new jobSetup Git RepoName the job as "forecastweather-v1-test" Go to New Item > Build a maven project > Select Git under Source Code Management > Set URL as "https://github.com/dzuluagaapigee/apigee-ci-jenkins-git-maven-jmeter.git". Since this is a public repo, there's no need to set any credentials. In case you need to connect to a private repository, you'll need to setup ssh keys generated from you Virtual Box to be added to the private repo. Setup Build TriggerFor simplicity, setup Jenkins to poll for changes every 15 minutes under Build Triggers
Enable Mask PasswordsEnable Mask passwords under Build Environment Setup Maven Execution StepSet Root POM as Set Goals and Options as A quick and dirty solution is to add Global Properties under Manage Jenkins > Configure System. Be aware that this won't prevent from including them in the console output. Run JobGo back to Job and click "Build Now" Check build historyTest AnalysisAnalize JMeter Log files (JTL)Configure forecastweatherapi Job and under Add post-build action pick Publish Performance test result report, add a new JMeter report and provide the path under the workspace as apiproxies/forecastweatherapi/target/jmeter/results/*.jtl. Under Relative Thresholds for build comparison, set Unstable % Range negative as 80 and positive as 100. Set Failed % Range negative as 90 and positive as 100. Save and run this job. The next time this job is executed, performance reports will be generated. NotificationsSetup emailSetup email from Manage Jenkins > Configure System > E-mail Notification For a small test, GMail SMTP settings can be setup. Also make sure to create an App password Edit Job to setup Email NotificationEmail notification leverages Email-ext Jenkins Plugin. Edit Job configuration and "Add Post Build Action" (make sure to click advanced and pick the proper trigger e.g. Always, Fail, Success, etc.) Jenkins CLIJenkins CLI commands are available under Manage Jenkins. Exporting JobsRun Node.js Plugin and Grunt API PluginInstall Node.js and Grunt-cliGo to Manage Jenkins > Configure System > NodeJS, click on Add NodeJS, pick latest version and include More info about NodeJS Plugin for Jenkins Here. Create a free-style software project jobThis job will allow execution of grunt-cli throughcommand line. Name this job "forecastweather-grunt-test". Point Source Code Management to apigee-deploy-grunt-plugin repoPoint SCM to this repo. Enable Mask Passwords under Build EnvironmentThis will leverage the two variables (ae_username and ae_password) created in step above. Add build step Execute ShellSet shell this step to execute the following commands:
For additional directions on enabling a job with Node.js, see this section here. Jenkins on EC2Bitnami Jenkins is a pre-configured, ready to run image for running Jenkins on Amazon EC2. Amazon EC2 Bitnami. Jenkins Pull Request Plugin SetupThis plugin is useful to trigger the execution of a Job when a pull request is created. WIP ContributingIf you would like to contribute, simply fork the repository, push your changes to a branch and send a pull request. Typo fixes, improvements to grammar or readability, it's all welcome. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论