mirror of
https://github.com/mudler/luet.git
synced 2025-09-26 07:10:25 +00:00
Compare commits
2 Commits
0.22.5
...
no_force_u
Author | SHA1 | Date | |
---|---|---|---|
|
f922d26d37 | ||
|
1c1045ace1 |
49
.chglog/CHANGELOG.tpl.md
Normal file
49
.chglog/CHANGELOG.tpl.md
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
{{ if .Versions -}}
|
||||||
|
{{ if .Unreleased.CommitGroups -}}
|
||||||
|
{{ range .Unreleased.CommitGroups -}}
|
||||||
|
### {{ .Title }}
|
||||||
|
{{ range .Commits -}}
|
||||||
|
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end -}}
|
||||||
|
{{ else }}
|
||||||
|
{{ range .Unreleased.Commits -}}
|
||||||
|
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end -}}
|
||||||
|
{{ end -}}
|
||||||
|
|
||||||
|
{{ range .Versions }}
|
||||||
|
<a name="{{ .Tag.Name }}"></a>
|
||||||
|
|
||||||
|
{{ if .CommitGroups -}}
|
||||||
|
{{ range .CommitGroups -}}
|
||||||
|
### {{ .Title }}
|
||||||
|
{{ range .Commits -}}
|
||||||
|
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end -}}
|
||||||
|
{{ else }}
|
||||||
|
{{ range .Commits -}}
|
||||||
|
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} (https://github.com/mudler/luet/commit/{{.Hash.Short}})
|
||||||
|
{{ end }}
|
||||||
|
{{ end -}}
|
||||||
|
|
||||||
|
{{- if .NoteGroups -}}
|
||||||
|
{{ range .NoteGroups -}}
|
||||||
|
### {{ .Title }}
|
||||||
|
{{ range .Notes }}
|
||||||
|
{{ .Body }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end -}}
|
||||||
|
{{ end -}}
|
||||||
|
{{ end -}}
|
||||||
|
|
||||||
|
{{- if .Versions }}
|
||||||
|
[Unreleased]: {{ .Info.RepositoryURL }}/compare/{{ $latest := index .Versions 0 }}{{ $latest.Tag.Name }}...HEAD
|
||||||
|
{{ range .Versions -}}
|
||||||
|
{{ if .Tag.Previous -}}
|
||||||
|
[{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }}
|
||||||
|
{{ end -}}
|
||||||
|
{{ end -}}
|
||||||
|
{{ end -}}
|
27
.chglog/config.yml
Executable file
27
.chglog/config.yml
Executable file
@@ -0,0 +1,27 @@
|
|||||||
|
style: github
|
||||||
|
template: CHANGELOG.tpl.md
|
||||||
|
info:
|
||||||
|
title: CHANGELOG
|
||||||
|
repository_url: https://github.com/mudler/luet
|
||||||
|
options:
|
||||||
|
commits:
|
||||||
|
# filters:
|
||||||
|
# Type:
|
||||||
|
# - feat
|
||||||
|
# - fix
|
||||||
|
# - perf
|
||||||
|
# - refactor
|
||||||
|
commit_groups:
|
||||||
|
title_maps:
|
||||||
|
feat: Features
|
||||||
|
fix: Bug Fixes
|
||||||
|
perf: Performance Improvements
|
||||||
|
refactor: Code Refactoring
|
||||||
|
ci: Continous Integration
|
||||||
|
header:
|
||||||
|
pattern: "(.*)"
|
||||||
|
pattern_maps:
|
||||||
|
- Subject
|
||||||
|
notes:
|
||||||
|
keywords:
|
||||||
|
- BREAKING CHANGE
|
6
.github/workflows/pr.yml
vendored
6
.github/workflows/pr.yml
vendored
@@ -74,8 +74,4 @@ jobs:
|
|||||||
- name: Build
|
- name: Build
|
||||||
run: sudo -E env "PATH=$PATH" make multiarch-build-small
|
run: sudo -E env "PATH=$PATH" make multiarch-build-small
|
||||||
- name: Tests
|
- name: Tests
|
||||||
run: sudo -E env "PATH=$PATH" make coverage
|
run: sudo -E env "PATH=$PATH" make test-coverage
|
||||||
- name: Codecov
|
|
||||||
uses: codecov/codecov-action@v2.1.0
|
|
||||||
with:
|
|
||||||
file: coverage.txt
|
|
||||||
|
7
.github/workflows/push.yml
vendored
7
.github/workflows/push.yml
vendored
@@ -84,9 +84,4 @@ jobs:
|
|||||||
env "TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
env "TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
||||||
env "UNIT_TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
env "UNIT_TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
||||||
env "UNIT_TEST_DOCKER_IMAGE_REPOSITORY=${{ secrets.DOCKER_TESTING_UNIT_TEST_IMAGE }}" \
|
env "UNIT_TEST_DOCKER_IMAGE_REPOSITORY=${{ secrets.DOCKER_TESTING_UNIT_TEST_IMAGE }}" \
|
||||||
make coverage
|
make test-coverage
|
||||||
- name: Codecov
|
|
||||||
uses: codecov/codecov-action@v2.1.0
|
|
||||||
with:
|
|
||||||
file: coverage.txt
|
|
||||||
|
|
||||||
|
6
.github/workflows/release.yml
vendored
6
.github/workflows/release.yml
vendored
@@ -87,11 +87,7 @@ jobs:
|
|||||||
env "TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
env "TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
||||||
env "UNIT_TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
env "UNIT_TEST_DOCKER_IMAGE=${{ secrets.DOCKER_TESTING_IMAGE }}" \
|
||||||
env "UNIT_TEST_DOCKER_IMAGE_REPOSITORY=${{ secrets.DOCKER_TESTING_UNIT_TEST_IMAGE }}" \
|
env "UNIT_TEST_DOCKER_IMAGE_REPOSITORY=${{ secrets.DOCKER_TESTING_UNIT_TEST_IMAGE }}" \
|
||||||
make coverage
|
make test-coverage
|
||||||
- name: Codecov
|
|
||||||
uses: codecov/codecov-action@v2.1.0
|
|
||||||
with:
|
|
||||||
file: coverage.txt
|
|
||||||
|
|
||||||
release:
|
release:
|
||||||
name: Release
|
name: Release
|
||||||
|
35
.travis.yml
Normal file
35
.travis.yml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
dist: bionic
|
||||||
|
language: go
|
||||||
|
go:
|
||||||
|
- "1.14"
|
||||||
|
|
||||||
|
env:
|
||||||
|
global:
|
||||||
|
- "GO15VENDOREXPERIMENT=1"
|
||||||
|
jobs:
|
||||||
|
- "DOCKER_BUILDKIT=0"
|
||||||
|
- "DOCKER_BUILDKIT=1"
|
||||||
|
before_install:
|
||||||
|
- sudo rm -rf /var/lib/apt/lists/*
|
||||||
|
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
|
||||||
|
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) edge"
|
||||||
|
- sudo apt-get update
|
||||||
|
- echo '{"experimental":true}' | sudo tee /etc/docker/daemon.json
|
||||||
|
- export DOCKER_CLI_EXPERIMENTAL=enabled
|
||||||
|
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
|
||||||
|
- mkdir -vp ~/.docker/cli-plugins/
|
||||||
|
- curl --silent -L "https://github.com/docker/buildx/releases/download/v0.3.0/buildx-v0.3.0.linux-amd64" > ~/.docker/cli-plugins/docker-buildx
|
||||||
|
- chmod a+x ~/.docker/cli-plugins/docker-buildx
|
||||||
|
- docker buildx version
|
||||||
|
- sudo -E env "PATH=$PATH" apt-get install -y libcap2-bin
|
||||||
|
- sudo -E env "PATH=$PATH" make deps
|
||||||
|
script:
|
||||||
|
- sudo -E env "PATH=$PATH" make multiarch-build test-integration test-coverage
|
||||||
|
|
||||||
|
#after_success:
|
||||||
|
# - |
|
||||||
|
# if [ -n "$TRAVIS_TAG" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
|
||||||
|
# sudo -E env "PATH=$PATH" git config --global user.name "Deployer" && git config --global user.email foo@bar.com
|
||||||
|
# sudo -E env "PATH=$PATH" go get github.com/tcnksm/ghr
|
||||||
|
# sudo -E env "PATH=$PATH" ghr -u mudler -r luet --replace $TRAVIS_TAG release/
|
||||||
|
# fi
|
6
Makefile
6
Makefile
@@ -28,7 +28,11 @@ test-integration:
|
|||||||
|
|
||||||
.PHONY: coverage
|
.PHONY: coverage
|
||||||
coverage:
|
coverage:
|
||||||
ginkgo --flake-attempts=3 --fail-fast -cover -covermode=atomic -coverprofile=coverage.txt -r .
|
go test ./... -coverprofile=coverage.txt -covermode=atomic
|
||||||
|
|
||||||
|
.PHONY: test-coverage
|
||||||
|
test-coverage:
|
||||||
|
scripts/ginkgo.coverage.sh --codecov
|
||||||
|
|
||||||
.PHONY: help
|
.PHONY: help
|
||||||
help:
|
help:
|
||||||
|
@@ -30,7 +30,7 @@ var cfgFile string
|
|||||||
var Verbose bool
|
var Verbose bool
|
||||||
|
|
||||||
const (
|
const (
|
||||||
LuetCLIVersion = "0.22.5"
|
LuetCLIVersion = "0.22.4"
|
||||||
LuetEnvPrefix = "LUET"
|
LuetEnvPrefix = "LUET"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -78,9 +78,6 @@ var _ = Describe("Delta", func() {
|
|||||||
)
|
)
|
||||||
Expect(err).ToNot(HaveOccurred())
|
Expect(err).ToNot(HaveOccurred())
|
||||||
defer os.RemoveAll(tmpdir) // clean up
|
defer os.RemoveAll(tmpdir) // clean up
|
||||||
|
|
||||||
// No extra dirs are present
|
|
||||||
Expect(file.Exists(filepath.Join(tmpdir, "home"))).To(BeFalse())
|
|
||||||
// Cache from go
|
// Cache from go
|
||||||
Expect(file.Exists(filepath.Join(tmpdir, "root", ".cache"))).To(BeTrue())
|
Expect(file.Exists(filepath.Join(tmpdir, "root", ".cache"))).To(BeTrue())
|
||||||
// sh is present from alpine, hence not in the result
|
// sh is present from alpine, hence not in the result
|
||||||
|
@@ -65,8 +65,13 @@ func ExtractDeltaAdditionsFiles(
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
switch hdr.Typeflag {
|
||||||
|
case tar.TypeDir:
|
||||||
|
filesSrc.Set(filepath.Dir(hdr.Name), "")
|
||||||
|
default:
|
||||||
filesSrc.Set(hdr.Name, "")
|
filesSrc.Set(hdr.Name, "")
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return func(h *tar.Header) (bool, error) {
|
return func(h *tar.Header) (bool, error) {
|
||||||
|
|
||||||
|
@@ -522,13 +522,6 @@ func (l *LuetInstaller) Install(cp pkg.Packages, s *System) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(s.Database.World()) > 0 && !l.Options.Relaxed {
|
|
||||||
l.Options.Context.Info(":thinking: Checking for available upgrades")
|
|
||||||
if err := l.checkAndUpgrade(syncedRepos, s); err != nil {
|
|
||||||
return errors.Wrap(err, "while checking upgrades before install")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
o := Option{
|
o := Option{
|
||||||
NoDeps: l.Options.NoDeps,
|
NoDeps: l.Options.NoDeps,
|
||||||
Force: l.Options.Force,
|
Force: l.Options.Force,
|
||||||
|
60
scripts/ginkgo.coverage.sh
Executable file
60
scripts/ginkgo.coverage.sh
Executable file
@@ -0,0 +1,60 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Copyright 2016 The Kubernetes Authors All rights reserved.
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
covermode=${COVERMODE:-atomic}
|
||||||
|
coverdir=$(mktemp -d /tmp/coverage.XXXXXXXXXX)
|
||||||
|
profile="${coverdir}/cover.out"
|
||||||
|
coveragetxt="coverage.txt"
|
||||||
|
|
||||||
|
|
||||||
|
generate_cover_data() {
|
||||||
|
ginkgo --flake-attempts=3 --fail-fast -cover -r .
|
||||||
|
echo "" > ${coveragetxt}
|
||||||
|
find . -type f -name "*.coverprofile" | while read -r file; do cat "$file" >> ${coveragetxt} && mv "$file" "${coverdir}"; done
|
||||||
|
echo "mode: $covermode" >"$profile"
|
||||||
|
grep -h -v "^mode:" "$coverdir"/*.coverprofile >>"$profile"
|
||||||
|
}
|
||||||
|
|
||||||
|
push_to_coveralls() {
|
||||||
|
hash goveralls 2>/dev/null || go get github.com/mattn/goveralls
|
||||||
|
goveralls -coverprofile="${profile}" -service=circle-ci -repotoken "$COVERALLS_REPO_TOKEN" || echo "push to coveralls failed"
|
||||||
|
}
|
||||||
|
|
||||||
|
push_to_codecov() {
|
||||||
|
bash <(curl -s https://codecov.io/bash) || echo "push to codecov failed"
|
||||||
|
}
|
||||||
|
|
||||||
|
generate_cover_data
|
||||||
|
go tool cover -func "${profile}"
|
||||||
|
|
||||||
|
case "${1-}" in
|
||||||
|
--html)
|
||||||
|
go tool cover -html "${profile}"
|
||||||
|
;;
|
||||||
|
--coveralls)
|
||||||
|
if [ -z "$COVERALLS_REPO_TOKEN" ]; then
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
echo '$COVERALLS_REPO_TOKEN not set. Skipping pushing coverage report to coveralls.io'
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
push_to_coveralls
|
||||||
|
;;
|
||||||
|
--codecov)
|
||||||
|
push_to_codecov
|
||||||
|
;;
|
||||||
|
esac
|
Reference in New Issue
Block a user