Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save lacoski/159d01b08125fcc43b2f1c1e889bd42a to your computer and use it in GitHub Desktop.
Save lacoski/159d01b08125fcc43b2f1c1e889bd42a to your computer and use it in GitHub Desktop.

Gist for https://www.youtube.com/watch?v=38di3_iVDIA

Commands

  • kopia repository create s3 --bucket=<<bucketId>>
  • kopia repository validate-provider
  • kopia repository status
  • kopia snapshot create /var/lib/jenkins
  • kopia snapshot list
  • kopia diff <a> <b>
  • kopia policy show /var/lib/jenkins
  • kopia policy set --add-ignore .cache/ --add-ignore .groovy/ --add-ignore .java/ /var/lib/jenkins
  • kopia policy list

AWS Policy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": "arn:aws:s3:::<<bucketId>>"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject"
            ],
            "Resource": "arn:aws:s3:::<<bucketId>>/*"
        }
    ]
}

jenkins-kopia.sh

#!/bin/bash
/bin/kopia repository connect s3 --bucket=<<bucketId>>
/bin/kopia snapshot create --all

crontab

AWS_ACCESS_KEY_ID=<<access key>>
AWS_SECRET_ACCESS_KEY=<<secret>>
KOPIA_PASSWORD=<<repository password>>
KOPIA_CHECK_FOR_UPDATES=false

*/15 * * * * /root/jenkins-kopia.sh 2>&1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment