Skip to content

Commit

Permalink
Plain YAML deployment manifest is unmaintained, deleting (#942)
Browse files Browse the repository at this point in the history
  • Loading branch information
mazay authored Oct 15, 2024
1 parent 6d4791b commit c644eca
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 223 deletions.
141 changes: 0 additions & 141 deletions deploy/all-in-one.yaml

This file was deleted.

82 changes: 0 additions & 82 deletions docs/running-on-k8s.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,86 +84,4 @@ helm status s3sync-service

Please check [the Helm Charts](helm-charts.md) documentation on available configuration options.

# Deployment manifest

As an alternative to the helm deployments there's a generated [all-in-one.yaml](https://raw.githubusercontent.com/mazay/s3sync-service/master/deploy/all-in-one.yaml) deployment manifest, however, this approach is a bit more challenging as it requires some modifications in the manifest to be made prior the deployment.

The first part to be adjusted is the secret:
```yaml
...
data:
token: |-
AWS_ACCESS_KEY_ID: QUtJQUk0NFFIOERIQkVYQU1QTEU=
AWS_SECRET_ACCESS_KEY: amU3TXRHYkNsd0JGLzJacDlVdGsvaDN5Q284bnZiRVhBTVBMRUtFWQ==
...
```

This is `base64` encoded secret key for accessing your S3 bucket(s), you can either update these values with the actual keys or you can create them using some more secure tool, for example [sealed-secrets-controller](https://github.com/bitnami-labs/sealed-secrets). If you choose the second option - the secret object can be removed and you just need to pass the right secret name in the following line:
```yaml
...
envFrom:
- secretRef:
name: s3sync-service-kube-system-secret
...
```

Next you need to create PVs/PVCs and add something like that to the manifest:
```yaml
...
envFrom:
- secretRef:
name: s3sync-service-kube-system-secret
volumes:
- name: local-path1
persistentVolumeClaim:
claimName: local-path1
- name: local-path2
persistentVolumeClaim:
claimName: local-path2
...
terminationGracePeriodSeconds: 300
volumeMounts:
- name: local-path1
mountPath: /local/path1
readOnly: true
- name: local-path2
mountPath: /local/path2
readOnly: true
...
```

And finally add your sites to the configmap:
```yaml
...
data:
config.yml: |-
aws_region: us-east-1
loglevel: info
upload_queue_buffer: 0
upload_workers: 10
checksum_workers: 5
watch_interval: 1s
s3_ops_retries: 5
sites:
- local_path: /local/path1
bucket: backup-bucket-path1
bucket_region: us-east-1
storage_class: STANDARD_IA
exclusions:
- .[Dd][Ss]_[Ss]tore
- .[Aa]pple[Dd]ouble
- local_path: /local/path2
bucket: backup-bucket-path2
bucket_path: path2
exclusions:
- "[Tt]humbs.db"
```
And deploy your resources:
```bash
kubectl apply -f all-in-one.yaml
```

At this point the app should be running on your k8s cluster, feel free to go ahead and check it's logs.

---

0 comments on commit c644eca

Please sign in to comment.