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

Add documentation for kopia repository server controller workflow #2077

Open
wants to merge 35 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
75eebd9
Add deployment docs for kopia repository server controller
kale-amruta May 26, 2023
0f08325
add custom resource for repository server
kale-amruta May 30, 2023
ecf87ed
add sample repository server
kale-amruta May 31, 2023
83d4751
add secrets creation part
kale-amruta May 31, 2023
c6fc2dd
add tutorial
kale-amruta Jun 1, 2023
596c074
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Jun 2, 2023
fa158e4
add repository server controller details
kale-amruta Jun 5, 2023
27889ed
add tutorials under a folder
kale-amruta Jun 5, 2023
b46d334
fix lint errors
kale-amruta Jun 5, 2023
3f775e6
Add RepositoryServer in templates.rst
r4rajat Jun 5, 2023
579a5c8
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Jun 8, 2023
d519fbf
address review comments
kale-amruta Jun 8, 2023
29b08a9
make lint happy
kale-amruta Jun 8, 2023
34f566b
missing kubectl command
kale-amruta Jun 8, 2023
60769f1
address Uday's review comments
kale-amruta Jun 13, 2023
20c88d6
Update templates.rst
r4rajat Jun 12, 2023
9a4f03c
make lint happy
kale-amruta Jun 13, 2023
5bf5bc2
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Jun 13, 2023
f94dd0c
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Jun 23, 2023
1b58ca2
address review comments by Uday
kale-amruta Jun 23, 2023
9300281
fix grammatical mistake
kale-amruta Jun 23, 2023
7d10bbe
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Aug 3, 2023
9ac8e20
Use `kopia` for CLI usage and use `Kopia` for project/tool
kale-amruta Aug 3, 2023
b07c2e3
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Aug 24, 2023
0d347a9
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Aug 24, 2023
3059a13
fix grammatical mistakes
kale-amruta Aug 25, 2023
eeac2e7
Merge branch 'kopiaRepositoryServerWorkflowDocs' of github.com:kanist…
kale-amruta Aug 25, 2023
7fe005d
fix errors
kale-amruta Aug 25, 2023
1981792
fix missing article in the sentence
kale-amruta Aug 25, 2023
4bc5322
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Sep 26, 2023
0454234
add repository server workflow diagram
kale-amruta Sep 26, 2023
1497530
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Oct 12, 2023
aec8f45
address review comments
kale-amruta Oct 13, 2023
732bd55
add missing articles
kale-amruta Oct 19, 2023
441b587
Merge branch 'master' into kopiaRepositoryServerWorkflowDocs
kale-amruta Oct 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
447 changes: 446 additions & 1 deletion docs/architecture.rst

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ and easy to install, operate and scale.

overview
install
tutorial
kanister_tutorial
architecture
tasks
tooling
Expand Down
17 changes: 17 additions & 0 deletions docs/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,23 @@ like below:
--set bpValidatingWebhook.tls.caBundle=$(cat /path/to/ca.pem | base64 -w 0) \
--set bpValidatingWebhook.tls.secretName=tls-secret

.. _deploying_repo_server_controller:

Deploying Kopia Repository server controller
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved
============================================

Kopia Repository server controller is not enabled by default. It can be
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved
deployed by setting the `repositoryServerController.enabled` value as
shown below

.. substitution-code-block:: bash

helm upgrade --install kanister kanister/kanister-operator --namespace kanister --create-namespace \
--set repositoryServerController.enabled=true

This will create another container in the kanister pod for kopia
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved
repository server controller.


Building and Deploying from Source
==================================
Expand Down
9 changes: 9 additions & 0 deletions docs/kanister_tutorial.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.. _tutorials:

Tutorials
*********
.. toctree::
:maxdepth: 1

tutorials/tutorial.rst
tutorials/tutorial_with_repositoryserver.rst
2 changes: 1 addition & 1 deletion docs/overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Getting Started

Follow the instructions in the :ref:`install` section to get Kanister up and
running on your Kubernetes cluster. Then see Kanister in action by going through
the walkthrough under :ref:`tutorial`.
the walkthrough under :ref:`tutorials`.

The :ref:`architecture` section provides architectural insights into how things
work. We recommend that you take a look at it.
47 changes: 47 additions & 0 deletions docs/templates.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ The TemplateParam struct is defined as:
Secrets map[string]v1.Secret
Time string
Profile *Profile
RepositoryServer *RepositoryServer
Options map[string]string
Object map[string]interface{}
Phases map[string]*Phase
Expand Down Expand Up @@ -546,6 +547,52 @@ The currently supported Profile template is based on the following definitions
Secret ObjectReference
}

RepositoryServers
-----------------

RepositoryServers are a Kanister CustomResource that contains information about storage,
repository and server details which are required for running a kopia repository server
instance. Which could be further used for data operation artifacts.
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved

Unlike Secrets and ConfigMaps, only a single repository server can optionally be
referenced by an ActionSet. As a result, it is not necessary to
name the RepositoryServer in the Blueprint.
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved

The following examples should be helpful.
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved

.. code-block:: yaml

# Access the RepositoryServer name
"{{ .RepositoryServer.Name }}"

# Access the RepositoryServer service name
"{{ .RepositoryServer.ServerInfo.ServiceName }}"

The currently supported RepositoryServer template is based on the following definitions
kale-amruta marked this conversation as resolved.
Show resolved Hide resolved

.. code-block:: go
:linenos:

// RepositoryServer contains fields from Repository server CR that will be used to resolve go templates for repository server in blueprint
type RepositoryServer struct {
Name string
Namespace string
ServerInfo crv1alpha1.ServerInfo
Username string
Credentials RepositoryServerCredentials
Address string
}

type RepositoryServerCredentials struct {
ServerTLS v1.Secret
ServerUserAccess v1.Secret
}

type ServerInfo struct {
PodName string `json:"podName,omitempty"`
ServiceName string `json:"serviceName,omitempty"`
}

Options
-------

Expand Down
2 changes: 0 additions & 2 deletions docs/tutorial.rst β†’ docs/tutorials/tutorial.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
.. _tutorial:

Tutorial
********

Expand Down
Loading