mirror of
https://github.com/1Password/onepassword-operator.git
synced 2025-10-24 00:10:46 +00:00
Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5b65196d31 | ||
|
|
e7df8a485d | ||
|
|
ded76138da | ||
|
|
a5db6aeb81 | ||
|
|
d45f682c37 | ||
|
|
d0c1235e58 | ||
|
|
9e8f621020 | ||
|
|
8dd7a28456 | ||
|
|
43b06dd7aa | ||
|
|
e8e01d6578 | ||
|
|
b53e017b77 | ||
|
|
b2565cebf8 | ||
|
|
9459d2e292 | ||
|
|
0409b17ef4 | ||
|
|
2e47b76d4c | ||
|
|
1cca09df90 | ||
|
|
b9cb92eb1b |
36
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
36
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
about: Report bugs and errors found while using the Operator.
|
||||||
|
title: ''
|
||||||
|
labels: bug
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Your environment
|
||||||
|
|
||||||
|
<!-- Version of the Operator when the error occurred -->
|
||||||
|
Operator Version:
|
||||||
|
|
||||||
|
<!-- What version of the Connect server are you running?
|
||||||
|
You can get this information from the Integrations section in 1Password
|
||||||
|
https://start.1password.com/integrations/active
|
||||||
|
-->
|
||||||
|
Connect Server Version:
|
||||||
|
|
||||||
|
<!-- What version of Kubernetes have you deployed the operator to? -->
|
||||||
|
Kubernetes Version:
|
||||||
|
|
||||||
|
## What happened?
|
||||||
|
<!-- Describe the bug or error -->
|
||||||
|
|
||||||
|
## What did you expect to happen?
|
||||||
|
<!-- Describe what should have happened -->
|
||||||
|
|
||||||
|
## Steps to reproduce
|
||||||
|
1. <!-- Describe Steps to reproduce the issue -->
|
||||||
|
|
||||||
|
|
||||||
|
## Notes & Logs
|
||||||
|
<!-- Paste any logs here that may help with debugging.
|
||||||
|
Remember to remove any sensitive information before sharing! -->
|
||||||
9
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
9
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# docs: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
|
||||||
|
blank_issues_enabled: true
|
||||||
|
contact_links:
|
||||||
|
- name: 1Password Community
|
||||||
|
url: https://1password.community/categories/secrets-automation
|
||||||
|
about: Please ask general Secrets Automation questions here.
|
||||||
|
- name: 1Password Security Bug Bounty
|
||||||
|
url: https://bugcrowd.com/agilebits
|
||||||
|
about: Please report security vulnerabilities here.
|
||||||
32
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
32
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
name: Feature request
|
||||||
|
about: Suggest an idea for the Operator
|
||||||
|
title: ''
|
||||||
|
labels: feature-request
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Summary
|
||||||
|
<!-- Briefly describe the feature in one or two sentences. You can include more details later. -->
|
||||||
|
|
||||||
|
### Use cases
|
||||||
|
<!-- Describe the use cases that make this feature useful to others.
|
||||||
|
The description should help the reader understand why the feature is necessary.
|
||||||
|
The better we understand your use case, the better we can help create an appropriate solution. -->
|
||||||
|
|
||||||
|
### Proposed solution
|
||||||
|
<!-- If you already have an idea for how the feature should work, use this space to describe it.
|
||||||
|
We'll work with you to find a workable approach, and any implementation details are appreciated.
|
||||||
|
-->
|
||||||
|
|
||||||
|
### Is there a workaround to accomplish this today?
|
||||||
|
<!-- If there's a way to accomplish this feature request without changes to the codebase, we'd like to hear it.
|
||||||
|
-->
|
||||||
|
|
||||||
|
### References & Prior Work
|
||||||
|
<!-- If a similar feature was implemented in another project or tool, add a link so we can better understand your request.
|
||||||
|
Links to relevant documentation or RFCs are also appreciated. -->
|
||||||
|
|
||||||
|
* <!-- Reference 1 -->
|
||||||
|
* <!-- Reference 2, etc -->
|
||||||
11
.github/workflows/build.yml
vendored
11
.github/workflows/build.yml
vendored
@@ -1,20 +1,11 @@
|
|||||||
name: Build and Test
|
name: Build and Test
|
||||||
|
on: [push, pull_request]
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- '**'
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- $default-branch
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
|
|
||||||
- name: Set up Go 1.x
|
- name: Set up Go 1.x
|
||||||
uses: actions/setup-go@v2
|
uses: actions/setup-go@v2
|
||||||
with:
|
with:
|
||||||
|
|||||||
54
.github/workflows/release.yml
vendored
Normal file
54
.github/workflows/release.yml
vendored
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
name: release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- 'v*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release-docker:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
DOCKER_CLI_EXPERIMENTAL: "enabled"
|
||||||
|
steps:
|
||||||
|
-
|
||||||
|
name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
-
|
||||||
|
name: Docker meta
|
||||||
|
id: meta
|
||||||
|
uses: crazy-max/ghaction-docker-meta@v2
|
||||||
|
with:
|
||||||
|
images: |
|
||||||
|
1password/onepassword-operator
|
||||||
|
# Publish image for x.y.z and x.y
|
||||||
|
# The latest tag is automatically added for semver tags
|
||||||
|
tags: |
|
||||||
|
type=semver,pattern={{version}}
|
||||||
|
type=semver,pattern={{major}}.{{minor}}
|
||||||
|
-
|
||||||
|
name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v1
|
||||||
|
-
|
||||||
|
name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v1
|
||||||
|
-
|
||||||
|
name: Docker Login
|
||||||
|
uses: docker/login-action@v1
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
|
-
|
||||||
|
name: Build and push
|
||||||
|
uses: docker/build-push-action@v2
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: Dockerfile
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
|
push: true
|
||||||
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
build-args: |
|
||||||
|
operator_version=${{ github.event.ref }}
|
||||||
@@ -12,6 +12,15 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
[//]: # (START/v1.0.1)
|
||||||
|
# v1.0.1
|
||||||
|
|
||||||
|
## Features
|
||||||
|
* This release also contains an arm64 Docker image. {#20}
|
||||||
|
* Docker images are also pushed to the :latest and :<major>.<minor> tags.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
[//]: # (START/v1.0.0)
|
[//]: # (START/v1.0.0)
|
||||||
# v1.0.0
|
# v1.0.0
|
||||||
|
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ COPY vendor/ vendor/
|
|||||||
# Build
|
# Build
|
||||||
ARG operator_version=dev
|
ARG operator_version=dev
|
||||||
RUN CGO_ENABLED=0 \
|
RUN CGO_ENABLED=0 \
|
||||||
GOOS=linux \
|
|
||||||
GOARCH=amd64 \
|
|
||||||
GO111MODULE=on \
|
GO111MODULE=on \
|
||||||
go build \
|
go build \
|
||||||
-ldflags "-X version.Version=$operator_version" \
|
-ldflags "-X version.Version=$operator_version" \
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ To create a Kubernetes Secret from a 1Password item, create a yaml file with the
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
apiVersion: onepassword.com/v1
|
apiVersion: onepassword.com/v1
|
||||||
kind: OnePasswordItem # {insert_new_name}
|
kind: OnePasswordItem
|
||||||
metadata:
|
metadata:
|
||||||
name: <item_name> #this name will also be used for naming the generated kubernetes secret
|
name: <item_name> #this name will also be used for naming the generated kubernetes secret
|
||||||
spec:
|
spec:
|
||||||
@@ -131,8 +131,8 @@ kind: Deployment
|
|||||||
metadata:
|
metadata:
|
||||||
name: deployment-example
|
name: deployment-example
|
||||||
annotations:
|
annotations:
|
||||||
operator.1password.io/item-path: "vaults/{vault_id_or_title}/items/{item_id_or_title}"
|
operator.1password.io/item-path: "vaults/<vault_id_or_title>/items/<item_id_or_title>"
|
||||||
operator.1password.io/item-name: "{secret_name}"
|
operator.1password.io/item-name: "<secret_name>"
|
||||||
```
|
```
|
||||||
|
|
||||||
Applying this yaml file will create a Kubernetes Secret with the name `<secret_name>` and contents from the location specified at the specified Item Path.
|
Applying this yaml file will create a Kubernetes Secret with the name `<secret_name>` and contents from the location specified at the specified Item Path.
|
||||||
|
|||||||
Reference in New Issue
Block a user