https://pulumi.com logo
g

gentle-application-59272

07/26/2023, 12:11 PM
we don't have a circleci provider for pulumi, do we?
e

echoing-dinner-19531

07/26/2023, 12:17 PM
I don't think so. We could help with a community provider for it, either a native one or bridging a terraform provider for circleCI such as https://registry.terraform.io/providers/mrolla/circleci/latest/docs
g

gentle-application-59272

07/26/2023, 12:18 PM
I've used that one a lot; is the process of bridging diffiult?
maybe i need to learn some Go hey
e

echoing-dinner-19531

07/26/2023, 12:20 PM
It's more difficult than it needs to be, a lot of accidently complexity that we're trying to get rid off, but it isn't that hard. You can generally copy another non-pulumi provider such as https://github.com/lbrlabs/pulumi-scaleway and look at the template repo https://github.com/pulumi/pulumi-tf-provider-boilerplate Feel free to ask for help in #contribute as well.
g

gentle-application-59272

07/26/2023, 12:21 PM
easy, cheers
ah crap it needs .net doesn't it
why, why u do this
"i have not suffered enough"
e

echoing-dinner-19531

07/26/2023, 12:23 PM
Yeh that's one of the "more complex than we'd like" aspects. You can just cut all the .net stuff out to start if you want, we're looking at making it easier for people here by doing the codegeneration and publishing as a service, but that's a while off. Still this'll be your provider, you don't have to support .net if you don't want to.
g

gentle-application-59272

07/26/2023, 12:23 PM
right
i'm guessing the vast majority of pulumi templates in the wild are tyescript followed by python, yeah?
f

fresh-scientist-56300

07/26/2023, 2:43 PM
I don't know if @big-architect-71258 is has time, but he helped me get my provider setup.
b

big-architect-71258

07/26/2023, 3:23 PM
Hi folks 👋 First question: which one to wrap? 😀 Seems there's no official provider. Or I overlooked it. If the provider is not such a monster like the Fortios of @fresh-scientist-56300 wrapping is not that hard.
Seems that the Provider of mrolla is by far the most popular one: https://github.com/mrolla/terraform-provider-circleci
I quickly wrapped the TF provider. But the functionality of the TF provider is limited. Only the following resources and data sources are available. Because I never used CircleCI, I can't assess if this makes any sense to have that little support.
Copy code
Resources: map[string]*tfbridge.ResourceInfo{
			"circleci_context": {
				Tok: makeResource(mainMod, "circleci_context"),
			},
			"circleci_context_environment_variable": {
				Tok: makeResource(mainMod, "circleci_context_environment_variable"),
			},
			"circleci_environment_variable": {
				Tok: makeResource(mainMod, "circleci_environment_variable"),
			},
		},
		DataSources: map[string]*tfbridge.DataSourceInfo{
			"circleci_context": {
				Tok: makeDataSource(mainMod, "circleci_context"),
			},
		},