Skip to content

Commit

Permalink
Merge branch 'main' into dependabot/go_modules/github.com/opencontain…
Browse files Browse the repository at this point in the history
…ers/runc-1.1.5
  • Loading branch information
Kenan Dervisevic authored Oct 2, 2023
2 parents f902c4f + 24be666 commit 203e514
Show file tree
Hide file tree
Showing 64 changed files with 6,767 additions and 236 deletions.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.git/
26 changes: 26 additions & 0 deletions .github/workflows/onbranch.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Build on branch

on:
push:
branches-ignore:
- "main"

jobs:
cli:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.ref_name }}

- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: ${{ inputs.GO_VERSION }}

- name: build and deploy on pr
run: go run main.go onbranch --stop-on-push
env:
INITIUM_APP_NAME: initium-cli
INITIUM_REGISTRY_USER: ${{ github.actor }}
INITIUM_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
24 changes: 24 additions & 0 deletions .github/workflows/onmain.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Deploy on main

on:
push:
branches:
- main

jobs:
cli:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: ${{ inputs.GO_VERSION }}

- name: build and deploy on main
run: go run main.go onmain --stop-on-push
env:
INITIUM_APP_NAME: initium-cli
INITIUM_REGISTRY_USER: ${{ github.actor }}
INITIUM_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
71 changes: 71 additions & 0 deletions .github/workflows/release-please.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
on:
push:
branches:
- main

name: release-please

jobs:
release-please:
permissions:
pull-requests: write
contents: write
id-token: write
runs-on: ubuntu-latest
steps:
## Build a release based on the release-please-config.json file
- uses: google-github-actions/release-please-action@v3
id: release
with:
command: manifest

## Build go binary and add it to the release
- uses: actions/checkout@v4
with:
fetch-depth: 0
if: ${{ steps.release.outputs.release_created }}

- uses: actions/setup-go@v4
with:
go-version: stable
if: ${{ steps.release.outputs.release_created }}

- name: Build go binaries
uses: goreleaser/goreleaser-action@v5
with:
distribution: goreleaser
version: latest
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: ${{ steps.release.outputs.release_created }}

## Publish the release to npm
- uses: actions/checkout@v4
if: ${{ steps.release.outputs.release_created }}

- name: Get commit author
id: commit_author
run: |
author=$(gh pr list --search ${{ github.sha }} --state merged --json mergedBy --jq '.[0].mergedBy.login')
echo "author=${author}" >> $GITHUB_OUTPUT
env:
GITHUB_TOKEN: ${{ steps.get_installation_token.outputs.token }}
if: ${{ steps.release.outputs.release_created }}

- uses: actions/setup-node@v3
# This sets up the .npmrc file for publishing to npm
with:
node-version: "18.x"
registry-url: "https://registry.npmjs.org"
if: ${{ steps.release.outputs.release_created }}

- name: Run npm publish
shell: bash
run: |
cd npm
./publish.sh
env:
NPM_TOKEN: ${{ secrets[format('NPM_TOKEN_{0}', steps.commit_author.outputs.author)] || secrets.NPM_TOKEN }}
OPTIC_TOKEN: ${{ secrets[format('OPTIC_TOKEN_{0}', steps.commit_author.outputs.author)] || secrets.OPTIC_TOKEN }}
if: ${{ steps.release.outputs.release_created }}
9 changes: 8 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
.idea/
.vscode/
.env
example/Dockerfile.kka
Dockerfile.initium
*.init_test*
initium_onmain.yaml
initium_onbranch.yaml
dist/

node_modules
46 changes: 46 additions & 0 deletions .goreleaser.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# This is an example .goreleaser.yml file with some sensible defaults.
# Make sure to check the documentation at https://goreleaser.com
before:
hooks:
# You may remove this if you don't use go modules.
- go mod tidy
# you may remove this if you don't need go generate
- go generate ./...
builds:
- binary: initium
env:
- CGO_ENABLED=0
goos:
- linux
- windows
- darwin

archives:
- format: tar.gz
# this name template makes the OS and Arch compatible with the results of uname.
name_template: >-
{{ .ProjectName }}_
{{- title .Os }}_
{{- if eq .Arch "amd64" }}x86_64
{{- else if eq .Arch "386" }}i386
{{- else }}{{ .Arch }}{{ end }}
{{- if .Arm }}v{{ .Arm }}{{ end }}
# use zip for windows archives
format_overrides:
- goos: windows
format: zip
checksum:
name_template: 'checksums.txt'
snapshot:
name_template: "{{ incpatch .Version }}-next"
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'

# The lines beneath this are called `modelines`. See `:help modeline`
# Feel free to remove those if you don't want/use them.
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
# vim: set ts=2 sw=2 tw=0 fo=cnqoj
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "0.5.0"
}
3 changes: 2 additions & 1 deletion .tool-versions
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
golang 1.20
golang 1.20
kubectl 1.24.7
102 changes: 102 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# Changelog

## [0.5.0](https://github.com/nearform/initium-cli/compare/v0.4.0...v0.5.0) (2023-09-21)


### Features

* allow release please to publish to npm ([5129767](https://github.com/nearform/initium-cli/commit/51297674339ff204afc71d6f6ee2ed38027fa9fa))

## [0.4.0](https://github.com/nearform/initium-cli/compare/v0.3.0...v0.4.0) (2023-09-21)


### Features

* change released binary name to initium ([#107](https://github.com/nearform/initium-cli/issues/107)) ([798a813](https://github.com/nearform/initium-cli/commit/798a813687a4c5356016b02dbfc292a65a5f772d))


### Bug Fixes

* execute publish steps only on release ([#110](https://github.com/nearform/initium-cli/issues/110)) ([abb4439](https://github.com/nearform/initium-cli/commit/abb4439d6638fca609316fa6b0fd621135cf75e6))
* release-please action failing for missing `)` ([#109](https://github.com/nearform/initium-cli/issues/109)) ([b12c919](https://github.com/nearform/initium-cli/commit/b12c919c241fcedb2594979cff666d63176a080d))

## [0.3.0](https://github.com/nearform/initium-cli/compare/v0.2.0...v0.3.0) (2023-09-04)


### Features

* get smarter at detecting app name ([#87](https://github.com/nearform/initium-cli/issues/87)) ([4fbe947](https://github.com/nearform/initium-cli/commit/4fbe947e9478d9452eac29495339cbee8ef5ea67))


### Bug Fixes

* avoid running closed PR action immediately after reopen ([#98](https://github.com/nearform/initium-cli/issues/98)) ([107b505](https://github.com/nearform/initium-cli/commit/107b505c943bf3c487d04c720f0ff0ac8e6576da))
* the init github command does not require the shared flags ([#93](https://github.com/nearform/initium-cli/issues/93)) ([6c9a32c](https://github.com/nearform/initium-cli/commit/6c9a32cfc682b5a081a84eb93c2d3550730720e8))

## [0.2.0](https://github.com/nearform/initium-cli/compare/v0.1.0...v0.2.0) (2023-08-18)


### Features

* add option to persist configuration ([#80](https://github.com/nearform/initium-cli/issues/80)) ([6c9f3ed](https://github.com/nearform/initium-cli/commit/6c9f3ed5ae7f9cd05a3f5a75610bab12f5bf57bf))


### Bug Fixes

* move from repo-name to container-registry ([#79](https://github.com/nearform/initium-cli/issues/79)) ([cebfa95](https://github.com/nearform/initium-cli/commit/cebfa954d362d9651596ed415abe53f6a428fc17))
* remove outdated quick-start ([#82](https://github.com/nearform/initium-cli/issues/82)) ([d3180a8](https://github.com/nearform/initium-cli/commit/d3180a833ac340223b33816c0ba42b5c1711ac89))

## [0.1.0](https://github.com/nearform/initium-cli/compare/v0.0.1...v0.1.0) (2023-08-11)


### Features

* use app token to generate relases from release-please ([#75](https://github.com/nearform/initium-cli/issues/75)) ([bc82eda](https://github.com/nearform/initium-cli/commit/bc82eda1b3767f2244b58d2982e3cf8da2059166))


### Bug Fixes

* update release-please.yaml ([#68](https://github.com/nearform/initium-cli/issues/68)) ([b06c556](https://github.com/nearform/initium-cli/commit/b06c556b9b393172d49945130569dd749c3af672))
* update to latest github-app-token action ([#76](https://github.com/nearform/initium-cli/issues/76)) ([539722f](https://github.com/nearform/initium-cli/commit/539722f5b82240ceae69aa307ace5ac9f40183df))

## 0.0.1 (2023-08-10)


### Features

* add action ([c3e489e](https://github.com/nearform/initium-cli/commit/c3e489e4f949959479be6c1e133e1b4b4be3fe0c))
* Add github init command ([#20](https://github.com/nearform/initium-cli/issues/20)) ([5631ef3](https://github.com/nearform/initium-cli/commit/5631ef392757dd39dc4ccda78fb8ca868d4fd576))
* Add Installation Command ([#46](https://github.com/nearform/initium-cli/issues/46)) ([233f4bd](https://github.com/nearform/initium-cli/commit/233f4bd593a1390730fc3954cb413383f2855143))
* Add support for configuration file ([#57](https://github.com/nearform/initium-cli/issues/57)) ([20a057d](https://github.com/nearform/initium-cli/commit/20a057d9e773b8b0a31d1d9c4800357bf37ee54a))
* adding checkout action ([e8ab9f8](https://github.com/nearform/initium-cli/commit/e8ab9f8cda3f5e32b16410c569eb0c1652d6d834))
* adding correct folder ([8a5f4b0](https://github.com/nearform/initium-cli/commit/8a5f4b05cb22bb439a0cf3331b59b25a51993588))
* adding initial tests ([eb1f803](https://github.com/nearform/initium-cli/commit/eb1f803c5d1a18291a1c2a283b299a78c3915112))
* adding job for commit and push nodejs project ([c6449ef](https://github.com/nearform/initium-cli/commit/c6449ef4a5878e5086c410a2e352b2f595e72349))
* adding make project_build to test the workflow ([45fa49f](https://github.com/nearform/initium-cli/commit/45fa49fb36012c65e9f8e47af6334ad23c2a9e10))
* adding more tests ([d998753](https://github.com/nearform/initium-cli/commit/d998753908df0b1cd9a2343bee861bb39e24c3eb))
* adding more tests ([0d21958](https://github.com/nearform/initium-cli/commit/0d2195864dc4b5925172e910bfdf3897dc722d91))
* adding small and simple test ([5e231b4](https://github.com/nearform/initium-cli/commit/5e231b41143e5f3e85f228ba4e431c7c7e54636f))
* adding test pipeline and make build only on master ([f9fff0d](https://github.com/nearform/initium-cli/commit/f9fff0d8cec7bcb296b4062d3a9527bec4680997))
* changes in the code ([d985443](https://github.com/nearform/initium-cli/commit/d985443ae863cb74f67855c5a333761290f40642))
* Implement the on branch workflow ([#58](https://github.com/nearform/initium-cli/issues/58)) ([2238866](https://github.com/nearform/initium-cli/commit/2238866bbfcd122757429a3d7e5a86e798ac1d2d))
* improve workflow ([#59](https://github.com/nearform/initium-cli/issues/59)) ([315926b](https://github.com/nearform/initium-cli/commit/315926bb016f6659bfff9f0c4a929b29cc9971c2))
* **issue-24:** Refactor Docker Image attributes and add files for knative templating ([#32](https://github.com/nearform/initium-cli/issues/32)) ([04e43fe](https://github.com/nearform/initium-cli/commit/04e43feb76c9893adc00a6d67b89e2277806161c))
* making things simpler ([f74d5da](https://github.com/nearform/initium-cli/commit/f74d5da28f89caa2788b18560b82f420acf20ae7))
* moving checkout action ([1d08b9f](https://github.com/nearform/initium-cli/commit/1d08b9fff6aa8daabe656cb1cedd46bb7577ea2c))
* moving the env for the whole job ([e6750b7](https://github.com/nearform/initium-cli/commit/e6750b716d26815b9fb589ece7d22ebb111d5a8d))
* remove action ([a45d5e0](https://github.com/nearform/initium-cli/commit/a45d5e01e62bc942d02b9a56b1652061dc2ea22a))
* remove duplicated tests ([01e31ab](https://github.com/nearform/initium-cli/commit/01e31ab42dc463377202ca4ad7dbac55d002912d))
* rename module to initium-cli ([#62](https://github.com/nearform/initium-cli/issues/62)) ([677885d](https://github.com/nearform/initium-cli/commit/677885df1d969ea2a5275a1b95ca37ed0314c173))
* updating token value ([4694813](https://github.com/nearform/initium-cli/commit/4694813c2044182a02a1fbae3464892765633e17))
* using local path ([09ea0d6](https://github.com/nearform/initium-cli/commit/09ea0d6a8003ee0233cdc4c49b6142582de29555))
* using reusable actions to allow add more jobs easily ([bb0bd27](https://github.com/nearform/initium-cli/commit/bb0bd270ca5003246da49776cbff74ece3330fc7))


### Bug Fixes

* correct shell, correct env ([68497e3](https://github.com/nearform/initium-cli/commit/68497e3220f6516d30b234549e54f7ecf45fe7a9))
* fixing reference ([411612f](https://github.com/nearform/initium-cli/commit/411612fc26c22b2345b67c536c6c8b5ab5140ddb))
* fixing reference ([0cabf57](https://github.com/nearform/initium-cli/commit/0cabf576237f2a0d4b8c16b2d0f20c82fc6d762f))
* fixing reference ([5613ff0](https://github.com/nearform/initium-cli/commit/5613ff01c301ce4fc366b933369889b3f2370e92))
* move secret input ([e53cbc2](https://github.com/nearform/initium-cli/commit/e53cbc2b21cbe665942d0d0fdc2d16335910d6cd))
* Update release-please.yaml ([#67](https://github.com/nearform/initium-cli/issues/67)) ([1876eb6](https://github.com/nearform/initium-cli/commit/1876eb6d3e98898bd0aaec6b0fba76fece118d99))
7 changes: 7 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Copyright 2023 NearForm Ltd.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
21 changes: 17 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,10 +1,23 @@

SHELL=/bin/bash

default: build

build:
go build -o bin/kka-cli
default: help

install:
help: ## help
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'

build: ## build cli app as binary
go build -o bin/initium

project_build: ## build a project using the cli
@go run main.go build

project_push: ## push a project to an registry
@go run main.go push

static: ## build static
CGO_ENABLED=0 go build -a -tags netgo -ldflags '-w -extldflags "-static"' -o bin/initium

install: ## install dependencies
go install
Loading

0 comments on commit 203e514

Please sign in to comment.