{"id":20947219,"url":"https://github.com/stakater/slack-operator","last_synced_at":"2025-05-14T01:32:07.816Z","repository":{"id":39592354,"uuid":"280911544","full_name":"stakater/slack-operator","owner":"stakater","description":"Kubernetes operator for Slack","archived":false,"fork":false,"pushed_at":"2024-11-18T14:48:56.000Z","size":399,"stargazers_count":19,"open_issues_count":16,"forks_count":8,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-18T16:07:55.515Z","etag":null,"topics":["kubernetes","operator","slack","stakater"],"latest_commit_sha":null,"homepage":"https://stakater.com/opensource","language":"Go","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/stakater.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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,"publiccode":null,"codemeta":null}},"created_at":"2020-07-19T17:03:58.000Z","updated_at":"2024-09-17T19:48:42.000Z","dependencies_parsed_at":"2024-10-24T06:00:42.105Z","dependency_job_id":"9b8a2424-268d-4b3b-a8e2-3d6085fb00f1","html_url":"https://github.com/stakater/slack-operator","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakater%2Fslack-operator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakater%2Fslack-operator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakater%2Fslack-operator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakater%2Fslack-operator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stakater","download_url":"https://codeload.github.com/stakater/slack-operator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225270659,"owners_count":17447635,"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":["kubernetes","operator","slack","stakater"],"created_at":"2024-11-19T00:09:59.243Z","updated_at":"2024-11-19T00:09:59.815Z","avatar_url":"https://github.com/stakater.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# slack-operator\n\nKubernetes operator for Slack\n\n## About\n\nSlack operator is used to automate the process of setting up a Slack channel for alertmanager in a k8s native way. By using CRDs it lets you:\n\n1. Manage Channels\n2. Configure Issues\n\nIt uses [Slack Api](https://api.slack.com/methods) in it's underlying layer and can be extended to perform other tasks that are supported via the REST API.\n\n## Usage\n\n### Prerequisites\n\n- Slack account\n- API Token to access Slack API (https://api.slack.com/)\n\n### Create secret\n\nCreate the following secret which is required for slack-operator:\n\n```yaml\nkind: Secret\napiVersion: v1\nmetadata:\n  name: slack-secret\ntype: Opaque\ndata:\n  APIToken: \u003cSLACK_API_TOKEN\u003e\n```\n\n### Deploy operator\n\n- Make sure that [certman](https://cert-manager.io/) is deployed in your cluster since webhooks require certman to generate valid certs since webhooks serve using HTTPS\n- To install certman\n\n```terminal\n$ kubectl apply --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v1.3.1/cert-manager.yaml\n```\n\n- Deploy operator\n\n```terminal\n$ oc apply -f bundle/manifests\n```\n\n## Local Development\n\n- [Operator-sdk v1.7.2](https://github.com/operator-framework/operator-sdk/releases/tag/v1.7.2) is required for local development.\n\n1. Create `slack-secret` secret\n2. Run `make run ENABLE_WEBHOOKS=false WATCH_NAMESPACE=default OPERATOR_NAMESPACE=default` where `WATCH_NAMESPACE` denotes the namespaces that the operator is supposed to watch and `OPERATOR_NAMESPACE` is the namespace in which it's supposed to be deployed.\n\n3. Before committing your changes run the following to ensure that everything is verified and up-to-date:\n   - `make verify`\n\n## Running Tests\n\n### Pre-requisites:\n\n1. Create a namespace with the name `test`\n2. Create `slack-secret` secret in test namespace\n\n### To run tests:\n\nUse the following command to run tests:\n`make test OPERATOR_NAMESPACE=test USE_EXISTING_CLUSTER=true`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstakater%2Fslack-operator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstakater%2Fslack-operator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstakater%2Fslack-operator/lists"}