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

Applying package with a stack is idempotent #17434

Closed
16 tasks done
jsteenb2 opened this issue Mar 25, 2020 · 0 comments · Fixed by #17989
Closed
16 tasks done

Applying package with a stack is idempotent #17434

jsteenb2 opened this issue Mar 25, 2020 · 0 comments · Fixed by #17989
Assignees

Comments

@jsteenb2
Copy link
Contributor

jsteenb2 commented Mar 25, 2020

As a user,
I want to create resources with pkgs and a stack,
so that I don't have to clean up duplicates resources and declare a state of the world

This card is to add idempotency to pkger via a stack. A stack is the state that tracks the side effects of creating a package. Using this, we want to be able to apply packages idempotently and always end up with the state declared in the package.

idempotent means the following:

the state of the world is always accurate to the package. resources are uniquely identified via its kind and metadata.name fields. Any and all secondary resources created (i.e. label mappings) are accurate to the package.

AC

  • stacks are used when a stack ID is provided to the dry run/apply functionality
    • extends HTTP POST /api/v2/packages with stack_id field
  • package payload is optional if stack_id is provided and stack has URL(s) associated with it
  • stacks are updated when side effects are created, if nothing changed between state of the world and package stack is not updated.
  • resources are applied idempotently
    • labels
    • buckets
    • checks
    • dashboards
    • notification endpoints
    • notification rules
    • tasks
    • telegraf
    • variable
  • when an association is removed in pkg, is also removed from platform
  • support use cases where elements have been deleted by user
@jsteenb2 jsteenb2 self-assigned this Mar 30, 2020
jsteenb2 added a commit that referenced this issue Apr 15, 2020
jsteenb2 added a commit that referenced this issue Apr 15, 2020
jsteenb2 added a commit that referenced this issue Apr 15, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
…latform and stateful pkg applications

references: #17434
jsteenb2 added a commit that referenced this issue May 6, 2020
…latform and stateful pkg applications

references: #17434
jsteenb2 added a commit that referenced this issue May 6, 2020
…latform and stateful pkg applications

references: #17434
jsteenb2 added a commit that referenced this issue May 6, 2020
…latform and stateful pkg applications

references: #17434
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
jsteenb2 added a commit that referenced this issue May 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant