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

Introduce v1beta1 api #647

Merged
merged 6 commits into from
Feb 23, 2019
Merged

Introduce v1beta1 api #647

merged 6 commits into from
Feb 23, 2019

Conversation

hossainemruz
Copy link
Contributor

@hossainemruz hossainemruz commented Jan 15, 2019

xref: #648

@codecov-io
Copy link

codecov-io commented Jan 15, 2019

Codecov Report

Merging #647 into master will not change coverage.
The diff coverage is 100%.

Impacted file tree graph

@@          Coverage Diff          @@
##           master   #647   +/-   ##
=====================================
  Coverage     100%   100%           
=====================================
  Files           2      2           
  Lines           7      8    +1     
=====================================
+ Hits            7      8    +1
Impacted Files Coverage Δ
apis/stash/install/install.go 100% <100%> (ø) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ccf4469...f9e58aa. Read the comment docs.

docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
@tamalsaha
Copy link
Member

tamalsaha commented Feb 6, 2019

  1. Let's call this stash/v1beta1
  2. Don't reuse any names from stash/v1alpha1 api.
  3. This will allow users to run Stash:0.9.0 & stash/v1beta1 operators in the same cluster. Our master branch will have docs for stash/v1beta1 only.
  4. stash/v1beta1 will be graduate to stash/v1 as-is assuming we get the api right.
  5. stash/v1alpha1 will be grandfathered with restic 0.8.3 .
Function == Action
Task / Activity / StashTemplate / ActionSequence -> []Function

BackupConfigurationTemplate <-- for default backups
BackupConfiguration
BackupSession -> 1:M(restic snapshots)
--------------

RestoreSession
- `restore: Always` will be an annotation on workload

  1. Stash CLI (kubectl plugin)
    Use cases:
    6a. Restore into local disk: wrapper around restic cli.
    6b. Restore into a different namespace from a repository: copy repository + secret into the desired namespace and then create RestoreSession object.
    6c. Backup PV: creates matching PVC from PV (ensures that user has permission to read PV).

docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated Show resolved Hide resolved
docs/design.md Outdated
apiVersion: stash.appscode.com/v1alpha2
kind: DefaultBackupConfiguration
metadata:
name: default-volume-backup-configuration
Copy link
Member

@tamalsaha tamalsaha Feb 6, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Example:
name: gitlab-backup-config

@tamalsaha tamalsaha changed the title Add v1alpha2 api Introduce v1beta1 api Feb 8, 2019
@tamalsaha
Copy link
Member

tamalsaha commented Feb 12, 2019

  • [?] SecurityScheme

  • [?] ExecutionEnvironment

  • AutoRestore should be based on annotation on workload.

apis/stash/v1beta1/task_types.go Outdated Show resolved Hide resolved
apis/stash/v1beta1/function_types.go Outdated Show resolved Hide resolved
apis/stash/v1beta1/task_types.go Outdated Show resolved Hide resolved
apis/stash/v1beta1/task_types.go Outdated Show resolved Hide resolved
apis/stash/v1beta1/types.go Outdated Show resolved Hide resolved
apis/stash/v1beta1/function_types.go Outdated Show resolved Hide resolved
@tamalsaha tamalsaha merged commit 302311a into master Feb 23, 2019
@tamalsaha tamalsaha deleted the v1alpha2 branch February 23, 2019 17:41
tamalsaha pushed a commit that referenced this pull request Mar 19, 2019
**Requirements:**
- [x] Merge #647 to master
- [x] Rebase against master
tamalsaha pushed a commit that referenced this pull request Mar 20, 2019
- [x] Merge #647 
- [x] Merge #673 

**Notes**

- Implicit inputs are collected from backup/restore session, backup config and repositories. For current list see `inputs.go`.
- Inputs to tasks are carried over to functions.
- Inputs for resolving tasks: implicit inputs + backup config params
- Inputs for resolving functions: inputs to parent task + task params
- Host name: `host-0`
- `drone/envsubst` only works with alphanumeric characters and underscore as key name.
tamalsaha pushed a commit that referenced this pull request Mar 21, 2019
**Requirements:**
- [x] Merge #647 to master
- [x] Merge #673 to master
- [x] Merge #674 to master
- [x] Merge #671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
tamalsaha pushed a commit to stashed/postgres that referenced this pull request May 23, 2019
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Merge stashed/stash#673 to master
- [x] Merge stashed/stash#674 to master
- [x] Merge stashed/stash#671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
tamalsaha pushed a commit to stashed/docs that referenced this pull request May 25, 2019
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Merge stashed/stash#673 to master
- [x] Merge stashed/stash#674 to master
- [x] Merge stashed/stash#671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
tamalsaha pushed a commit to stashed/installer that referenced this pull request May 25, 2019
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Merge stashed/stash#673 to master
- [x] Merge stashed/stash#674 to master
- [x] Merge stashed/stash#671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
tamalsaha pushed a commit to stashed/installer that referenced this pull request May 25, 2019
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Merge stashed/stash#673 to master
- [x] Merge stashed/stash#674 to master
- [x] Merge stashed/stash#671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
tamalsaha pushed a commit to stashed/installer that referenced this pull request May 27, 2019
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Merge stashed/stash#673 to master
- [x] Merge stashed/stash#674 to master
- [x] Merge stashed/stash#671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
tamalsaha pushed a commit to stashed/apimachinery that referenced this pull request Feb 16, 2020
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Rebase against master
tamalsaha pushed a commit to stashed/apimachinery that referenced this pull request Feb 16, 2020
**Requirements:**
- [x] Merge stashed/stash#647 to master
- [x] Merge stashed/stash#673 to master
- [x] Merge stashed/stash#674 to master
- [x] Merge stashed/stash#671 to master
- [x] Rebase against master

**Tasks:**
- [x] Update Restore Logic
- [x] Update Backup Logic
- [x] Update Workload Controllers
	- [x] Deployment
	- [x] DaemonSet
	- [x] ReplicationControler
	- [x] ReplicaSet
	- [x] StatefulSet
- [x] Fix ConfigMap lock deletion and RBAC stuff deletion logic
- [x] Ensure sidecar/init-container according to new design
	- [x] Ensure Restore init-container injection
	- [x] Ensure Restore init-container deletion
	- [x] Ensure Backup sidecar injection
	- [x] Ensure Backup sidecar deletion
- [x] Add new backup command (sagor is working)
- [x] Add new restore command

- [x] Add controller (possibly in different PR)
	- [x] PersistentVolumeClaim
	- [x] AppBinding
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants