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

Support for Project Resource #24

Closed
1 task done
kelvintaywl opened this issue Feb 26, 2023 · 0 comments · Fixed by #50
Closed
1 task done

Support for Project Resource #24

kelvintaywl opened this issue Feb 26, 2023 · 0 comments · Fixed by #50
Labels
question Further information is requested

Comments

@kelvintaywl
Copy link
Owner

kelvintaywl commented Feb 26, 2023

background

By supporting Project as a resource, it would mean that users can:

  • create / import a Project
  • update this Project
  • delete this project

I understand, from mrolla/terraform-provider-circleci#15, that you can effectively set up (create) a Project via the follow-project CircleCI v1.1 API.

  • TODO: test and confirm this v1.1 API works

Concerns

There are a few concerns I feel that needs to be addressed.
I've arranged this based on importance below.

1. No update or delete API endpoints

There are no public API endpoints to modify or delete an existing project.

Likely, the CircleCI UI uses a GraphQL API to handle project settings (e.g., enable Dynamic Configuration).
Importantly, there is no UI feature nor API to delete an existing project.

Without these dependencies, implementing a Project resource feels "incomplete";
In terms of developer experience, you may be able to create a Project, but cannot effective tear it down, or modify it.

2. Legacy v1.1. API

The follow-project CircleCI v1.1 API is ultimately on CircleCI's legacy v1.1 API.

Right now, this tool uses https://github.com/kelvintaywl/circleci-go-sdk to make API calls to CircleCI.
This SDK accounts only for the CircleCI v2 API.

Going into solution space, I would prefer making a separate SDK for the v1.1 API endpoint(s).

@kelvintaywl kelvintaywl added the question Further information is requested label Feb 26, 2023
@kelvintaywl kelvintaywl pinned this issue Feb 26, 2023
@kelvintaywl kelvintaywl unpinned this issue Nov 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant