{"id":19336764,"url":"https://github.com/samrocketman/jenkins-bootstrap-slack","last_synced_at":"2025-10-14T05:39:47.177Z","repository":{"id":32963309,"uuid":"36577763","full_name":"samrocketman/jenkins-bootstrap-slack","owner":"samrocketman","description":"Bootstrap a Jenkins instance configured for Jenkins slack plugin testing.","archived":false,"fork":false,"pushed_at":"2020-10-18T07:11:59.000Z","size":150,"stargazers_count":41,"open_issues_count":0,"forks_count":9,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-10-14T05:39:44.076Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/jenkinsci/slack-plugin","language":"Groovy","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/samrocketman.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}},"created_at":"2015-05-30T22:17:50.000Z","updated_at":"2023-02-23T07:40:13.000Z","dependencies_parsed_at":"2022-07-12T20:40:36.909Z","dependency_job_id":null,"html_url":"https://github.com/samrocketman/jenkins-bootstrap-slack","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/samrocketman/jenkins-bootstrap-slack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fjenkins-bootstrap-slack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fjenkins-bootstrap-slack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fjenkins-bootstrap-slack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fjenkins-bootstrap-slack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/samrocketman","download_url":"https://codeload.github.com/samrocketman/jenkins-bootstrap-slack/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fjenkins-bootstrap-slack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018013,"owners_count":26086235,"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-10-14T02:00:06.444Z","response_time":60,"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":[],"created_at":"2024-11-10T03:12:23.435Z","updated_at":"2025-10-14T05:39:47.135Z","avatar_url":"https://github.com/samrocketman.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bootstrap Jenkins to test Slack Plugin\n\nThis project helps to automate a stable means of testing pull requests for the\nJenkins [slack-plugin][slack-plugin].\n\n# Test sequence for PRs\n\n\u003e Note: Prerequisites include: Java 1.8, Vagrant, VirtualBox, and Ubuntu Linux\n\u003e 16.04 as a host.\n\nFor testing [`slack-plugin` pull requests][slack-pulls], I run through a manual\ntest sequence in addition to depending on the automated tests.  In general, I\nfeel comfortable merging a change when:\n\n- :white_check_mark: The plugin smoothly upgrades to SNAPSHOT build of the PR\n  from the stable version of the slack plugin without breaking existing\n  configurations.\n- :white_check_mark: The code integrates well with existing configurations.\n- :white_check_mark: You have included tests!\n\nThe following outlines a more detailed test sequence.\n\n### Testing slack.com\n\n1. Bootstrap fresh Jenkins.  `./slack_bootstrap.sh`.\n2. Once Jenkins is up and running, execute the following automation script to\n   run through building jobs.\n\n   ```\n   ./tests/integration/slack-test.sh\n   ```\n\n3. Once the script finishes running, manually verify all of the output messages\n   at https://jenkins-slack-plugin.slack.com/.\n\n### Testing mattermost\n\nConfigure Mattermost\n\n1. Bootstrap Mattermost with `vagrant up`.  Log into http://localhost:8065/ when\n   it finishes.\n2. Sign up with a dummy account.  This first account will be an admin.\n3. Create a new team named `slack-plugin`.\n4. Enable integrations.  Visit _System Console \u003e Integrations \u003e Custom\n   Integrations_ and be sure to _Enable Incoming Webhooks_.  Switch back to the\n   `slack-plugin` team when finished.\n5. Under `slack-plugin` menu click _Integrations_.  Add an incomming web hook.\n   Give it any name.  When you're finished you'll be presented with an\n   integration URL like\n   `http://localhost:8065/hooks/zsj3k4e3qbyq7qxpoqndruyoqy`.\n\n   * `http://localhost:8065/hooks/` is your base URL.\n   * `zsj3k4e3qbyq7qxpoqndruyoqy` is your integration token.\n\nConfigure slack plugin to use Mattermost.\n\n1. Go to Manage Jenkins \u003e Configure System.\n2. Under the _Global Slack Notifier Settings_ you'll need to configure:\n\n   * Base URL: `http://localhost:8065/hooks/`\n   * Team Subdomain: `slack-plugin`\n   * Integration Token: `zsj3k4e3qbyq7qxpoqndruyoqy` (this will be different\n     each time)\n   * Channel: `Off-Topic`\n\n3. Test the connection to be sure it's good.\n4. Configure all jobs to use the global mattermost configurations by executing\n   the following script.\n\n   ```\n   ./tests/integration/setup-mattermost.sh\n   ```\n\n5. Execute the following automation script to run through building jobs.\n\n   ```\n   ./tests/integration/slack-test.sh\n   ```\n\n6. Once the script finishes running, manually verify all of the output messages\n   at `http://localhost:8065/slack-plugin/channels/off-topic`.  All output\n   messages should be the same as when tested on `slack.com`.\n\n# Usage Instructions\n\nFor usage instructions related to scripts in this repository see\n[USAGE.md](USAGE.md).\n\n# More about this project\n\nThe [Jenkins][jenkins] [Slack plugin][slack-plugin] publishes build information\nto [Slack][slack] teams.   This project is meant to bootstrap Jenkins from\nscratch and pre-configure it to use the Slack plugin for testing.\n\nIf you're not already a member of `jenkins-slack-plugin.slack.com` then [please\njoin][join-slack] before bootstrapping this code so you can see messages posted\nto it.\n\n# Upgrading this project\n\nKeeping up with updates can be a challenge if it's not automated.  The following\nprocess keeps upgrading simple.\n\n    ./scripts/upgrade/upgrade_build_gradle.sh\n\nSee the more detailed [upgrade process](scripts/upgrade/README.md).\n\n\n# License\n\n    Copyright (c) 2015-2017 Sam Gleske - https://github.com/samrocketman/jenkins-bootstrap-slack\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n        http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n\nFor the full license see [LICENSE](LICENSE).\n\n[gh-token]: https://help.github.com/articles/creating-an-access-token-for-command-line-use/\n[jenkins]: http://jenkins-ci.org/\n[join-slack]: https://jenkins-slack-testing-signup.herokuapp.com/\n[slack-plugin]: https://github.com/jenkinsci/slack-plugin\n[slack-pulls]: https://github.com/jenkinsci/slack-plugin/pulls\n[slack]: https://slack.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamrocketman%2Fjenkins-bootstrap-slack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamrocketman%2Fjenkins-bootstrap-slack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamrocketman%2Fjenkins-bootstrap-slack/lists"}