Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Readding Hetzner provider #3192

Conversation

jonasbadstuebner
Copy link
Contributor

Description

This PR is to (re)add the support for Hetzner Cloud DNS as provider for external-dns. It still has room for improvement, since it does not make use of the bulk-edit or bulk-create feature of Hetzner Cloud DNS, but nevertheless I want to open this PR here for others to contribute ideas or test more advanced stuff, if they want to.
I'm currently using this provider in my "personal production environment" and it's doing it's job.

I would volunteer as maintainer for this provider integration

Maybe @jobstoit, the creator of the client library used in the provider integration, is interested in this too, but I'm not sure.

If I forgot something, please let me know.

Best regards,
Jonas

Checklist

  • Unit tests updated
  • End user documentation updated

@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Nov 24, 2022

CLA Signed

The committers listed above are authorized under a signed CLA.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. label Nov 24, 2022
@k8s-ci-robot
Copy link
Contributor

Welcome @DrBu7cher!

It looks like this is your first PR to kubernetes-sigs/external-dns 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes-sigs/external-dns has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. 😃

@k8s-ci-robot k8s-ci-robot added do-not-merge/invalid-owners-file Indicates that a PR should not merge because it has an invalid OWNERS file in it. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Nov 24, 2022
@jobstoit
Copy link

@DrBu7cher count me in! Let me know if I also need to sign the CLA.

@jonasbadstuebner
Copy link
Contributor Author

@jobstoit
Nice! I would add you to the OWNERS file, then you „have to“ sign it, before I can Merge this PR. I signed it and could unblock the PR, but if you agree, I‘d add you before? :)

@k8s-ci-robot k8s-ci-robot added the do-not-merge/invalid-commit-message Indicates that a PR should not merge because it has an invalid commit message. label Nov 25, 2022
@jonasbadstuebner
Copy link
Contributor Author

I guess I misunderstood what the OWNERS files does - we cannot simply sign the CLA, we need to be added as members, as mentioned here.
So we cannot be owners - I will remove us from there again. Sorry for my misunderstanding.

@jonasbadstuebner
Copy link
Contributor Author

In my case, I would at least miss a "sponsor" and also the required contributions for becoming a member.
The member request template shows all the required stuff. I will remove us as OWNERS again.

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/invalid-owners-file Indicates that a PR should not merge because it has an invalid OWNERS file in it. label Nov 25, 2022
@jobstoit
Copy link

@DrBu7cher I also signed the CLA.

@jobstoit
Copy link

jobstoit commented Nov 25, 2022

@DrBu7cher can't you change the commit messages? Or even revert/reset all those commits.

tommy31 and others added 14 commits November 25, 2022 12:14
Signed-off-by: Pulak Kanti Bhowmick <pkbhowmick007@gmail.com>
Signed-off-by: Pulak Kanti Bhowmick <pkbhowmick007@gmail.com>
Bumps [sigs.k8s.io/gateway-api](https://github.com/kubernetes-sigs/gateway-api) from 0.5.0 to 0.5.1.
- [Release notes](https://github.com/kubernetes-sigs/gateway-api/releases)
- [Changelog](https://github.com/kubernetes-sigs/gateway-api/blob/main/CHANGELOG.md)
- [Commits](kubernetes-sigs/gateway-api@v0.5.0...v0.5.1)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/gateway-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.119 to 1.44.136.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](aws/aws-sdk-go@v1.44.119...v1.44.136)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shuwei Hao <haoshuwei24@gmail.com>
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Dec 14, 2022
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: DrBu7cher
Once this PR has been reviewed and has the lgtm label, please ask for approval from njuettner by writing /assign @njuettner in a comment. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Dec 14, 2022
@jonasbadstuebner
Copy link
Contributor Author

I know that there is a lot to merge right now, but can I get an estimate on when this will be looked at?
@njuettner @szuecs

@jonasbadstuebner
Copy link
Contributor Author

@Raffo @seanmalloy

@jobstoit
Copy link

@DrBu7cher I'm also very curious about this proposal: #3063. That'd make it easier to self manage a Hetzner ExternalDNS plugin. I hope that they'll soon be able to implement such a generic plugin provider. Once they have that we could have our own repository to maintain

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 3, 2023
@k8s-ci-robot
Copy link
Contributor

@DrBu7cher: PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@samcday
Copy link

samcday commented Jan 10, 2023

@DrBu7cher I'm also very curious about this proposal: #3063. That'd make it easier to self manage a Hetzner ExternalDNS plugin. I hope that they'll soon be able to implement such a generic plugin provider. Once they have that we could have our own repository to maintain

Somewhat related, and maybe useful as prior art / inspiration: https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler/cloudprovider/externalgrpc

@szuecs
Copy link
Contributor

szuecs commented Feb 8, 2023

thanks for the PR we will not review/merge any new providers. We are working on a plugin provider which will enable you to integrate via webhook. All or most providers will be moved out of tree after plugin #3063 provider was created and we are sure that we can run a major provider out of tree.

1 similar comment
@szuecs
Copy link
Contributor

szuecs commented Feb 8, 2023

thanks for the PR we will not review/merge any new providers. We are working on a plugin provider which will enable you to integrate via webhook. All or most providers will be moved out of tree after plugin #3063 provider was created and we are sure that we can run a major provider out of tree.

@jonasbadstuebner
Copy link
Contributor Author

Hey,
yes I understand this.
It makes it easier to maintain the plugin later without flooding you maintainers with PRs.
I will follow this and I am sure, if not me myself, someone else at Hetzner Cloud will follow the status of the plugin provider.
Please keep this PR here open, in case someone is looking for Hetzner provider implementation in the meantime.
Thank you for your work!
BR and good look!

@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label May 10, 2023
@frittentheke
Copy link

/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label May 10, 2023
@kladiv
Copy link

kladiv commented Jul 31, 2023

+1

@mloiseleur
Copy link
Contributor

#3063 has been merged.
@DrBu7cher @jobstoit Next release of external-dns will include support for this webhook mechanism.

@itsmethemojo
Copy link

is there a sample implementation or a swagger definition to see which parameters this api endpoints support?

https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/webhook-provider.md

looks to me only from this documentation its pretty hard to develop a sidecar container for the dns provider of choice

@Raffo
Copy link
Contributor

Raffo commented Oct 29, 2023

You can refer to https://github.com/ionos-cloud/external-dns-ionos-webhook.

@itsmethemojo
Copy link

i see hetzner dns webhook is already in the making https://github.com/mconfalonieri/external-dns-hetzner-webhook

@Raffo
Copy link
Contributor

Raffo commented Nov 11, 2023

I'm going to close this one as v0.14.0 released officially the webhook and hetzner support can be provided through that.

@Raffo Raffo closed this Nov 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. new-provider size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet