commit 60d189001e36a208c352e29ad7ee1f2d013b73cc Author: Robert Kaussow Date: Thu Jan 16 22:36:08 2020 +0100 initial commit diff --git a/.drone.jsonnet b/.drone.jsonnet new file mode 100644 index 0000000..06f90c3 --- /dev/null +++ b/.drone.jsonnet @@ -0,0 +1,150 @@ +local PipelineBuild(os='linux', arch='amd64') = { + local tag = os + '-' + arch, + local version_tag = os + '-' + arch, + local file_suffix = std.strReplace(version_tag, '-', '.'), + kind: 'pipeline', + name: version_tag, + platform: { + os: os, + arch: arch, + }, + steps: [ + { + name: 'binary', + image: 'clux/muslrust:nightly-2019-12-19', + commands: [ + '[ -z "${DRONE_TAG}" ] && BITWARDEN_VERSION=master || BITWARDEN_VERSION=${DRONE_TAG%-*}', + 'curl -L https://github.com/dani-garcia/bitwarden_rs/archive/$BITWARDEN_VERSION.tar.gz | tar xz --strip-components=1', + 'ls -lah' + ], + }, + // { + // name: 'dryrun', + // image: 'plugins/docker:' + tag, + // settings: { + // dry_run: true, + // tags: version_tag, + // dockerfile: './Dockerfile.' + file_suffix, + // repo: 'xoxys/freshrss', + // username: { from_secret: 'docker_username' }, + // password: { from_secret: 'docker_password' }, + // build_args: { + // BITWARDEN_VERSION: '${DRONE_TAG%-*}', + // }, + // }, + // }, + // { + // name: 'publish', + // image: 'plugins/docker:' + tag, + // settings: { + // auto_tag: true, + // auto_tag_suffix: version_tag, + // dockerfile: './Dockerfile.' + file_suffix, + // repo: 'xoxys/freshrss', + // username: { from_secret: 'docker_username' }, + // password: { from_secret: 'docker_password' }, + // build_args: { + // BITWARDEN_VERSION: '${DRONE_TAG%-*}', + // }, + // }, + // when: { + // ref: [ + // 'refs/heads/master', + // 'refs/tags/**', + // ], + // }, + // }, + // { + // name: 'publish-gitea', + // image: 'plugins/gitea-release', + // settings: { + // api_key: { from_secret: 'gitea_token' }, + // base_url: 'https://gitea.rknet.org', + // overwrite: true, + // title: '${DRONE_TAG}', + // note: 'CHANGELOG.md', + // }, + // when: { + // ref: ['refs/tags/**'], + // }, + // }, + ], +}; + +local PipelineNotifications(depends_on=[]) = { + kind: 'pipeline', + name: 'notifications', + platform: { + os: 'linux', + arch: 'amd64', + }, + steps: [ + { + image: 'plugins/manifest', + name: 'manifest', + settings: { + ignore_missing: true, + tags: ['${DRONE_TAG}', '${DRONE_TAG%-*}', '${DRONE_TAG%.*}', '${DRONE_TAG%%.*}'], + username: { from_secret: 'docker_username' }, + password: { from_secret: 'docker_password' }, + spec: './manifest.tmpl', + }, + when: { + ref: [ + 'refs/heads/master', + 'refs/tags/**', + ], + }, + }, + { + name: 'readme', + image: 'sheogorath/readme-to-dockerhub', + environment: { + DOCKERHUB_USERNAME: { from_secret: 'docker_username' }, + DOCKERHUB_PASSWORD: { from_secret: 'docker_password' }, + DOCKERHUB_REPO_PREFIX: 'xoxys', + DOCKERHUB_REPO_NAME: 'freshrss', + README_PATH: 'README.md', + SHORT_DESCRIPTION: 'Rootless FreshRSS - Self-hosted RSS feed aggregator', + }, + when: { + ref: [ + 'refs/heads/master', + 'refs/tags/**', + ], + }, + }, + { + name: 'microbadger', + image: 'plugins/webhook', + settings: { + urls: { from_secret: 'microbadger_url' }, + }, + }, + { + image: 'plugins/matrix', + name: 'matrix', + settings: { + homeserver: 'https://matrix.rknet.org', + roomid: 'MtidqQXWWAtQcByBhH:rknet.org', + template: 'Status: **{{ build.status }}**
Build: [{{ repo.Owner }}/{{ repo.Name }}]({{ build.link }}) ({{ build.branch }}) by {{ build.author }}
Message: {{ build.message }}', + username: { from_secret: 'matrix_username' }, + password: { from_secret: 'matrix_password' }, + }, + when: { + status: ['success', 'failure'], + }, + }, + ], + trigger: { + status: ['success', 'failure'], + }, + depends_on: depends_on, +}; + +[ + PipelineBuild(os='linux', arch='amd64'), + // PipelineNotifications(depends_on=[ + // 'linux-amd64', + // ]), +] diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..bd34c86 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,17 @@ +--- +kind: pipeline +name: linux-amd64 + +platform: + os: linux + arch: amd64 + +steps: +- name: binary + image: clux/muslrust:nightly-2019-12-19 + commands: + - "[ -z \"${DRONE_TAG}\" ] && BITWARDEN_VERSION=master || BITWARDEN_VERSION=${DRONE_TAG%-*}" + - curl -L https://github.com/dani-garcia/bitwarden_rs/archive/$BITWARDEN_VERSION.tar.gz | tar xz --strip-components=1 + - ls -lah + +... diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..c6674cc --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 Robert Kaussow + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice (including the next +paragraph) shall be included in all copies or substantial portions of the +Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/manifest.tmpl b/manifest.tmpl new file mode 100644 index 0000000..cd2c37e --- /dev/null +++ b/manifest.tmpl @@ -0,0 +1,15 @@ +image: xoxys/freshrss:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}} +{{#if build.tags}} +tags: +{{#each build.tags}} + {{#if this}} + - {{trimPrefix "v" this}} + - {{trimPrefix "v" this}}-linux-amd64 + {{/if}} +{{/each}} +{{/if}} +manifests: + - image: xoxys/freshrss:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64 + platform: + architecture: amd64 + os: linux