Skip to content

Release 1.0 #305

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 67 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
fc11458
fix(remount): relocate libraries along with their symlinks (#255)
maxbrunet Jul 2, 2024
dda5253
fix: add usrLibMultiarchDir for 32-bit ARM, whatever that means (#258)
johnstcn Jul 2, 2024
00c6d77
ci: add linters, run linters, make linters happy (#261)
johnstcn Jul 2, 2024
f0835fe
fix(remount): correct usrLibMultiarchDir value for 32-bit ARM (#259)
maxbrunet Jul 3, 2024
bb37c71
docs(readme): correct dockerconfig mount path (#263)
maxbrunet Jul 3, 2024
2538741
feat: send logs using agent api v2 if available (#264)
johnstcn Jul 5, 2024
1f71283
chore: update kaniko fork for better cache probing (#273)
mafredri Jul 18, 2024
c288d8c
chore: bump google.golang.org/grpc from 1.64.0 to 1.64.1 (#271)
dependabot[bot] Jul 18, 2024
851c57d
fix(envbuilder): add /product_uuid and /product_name to IgnorePaths b…
johnstcn Jul 22, 2024
3c4a458
chore: refactor options to separate package (#278)
johnstcn Jul 23, 2024
b6cc003
chore: extract git operations to separate package (#279)
johnstcn Jul 23, 2024
9aa5fe9
chore: bump github.com/google/nftables from 0.1.1-0.20230115205135-9a…
dependabot[bot] Jul 23, 2024
6fc1cfa
chore: extract constants package (#282)
johnstcn Jul 29, 2024
f7c2dc1
chore: extract option defaults to options package (#283)
johnstcn Jul 29, 2024
2ee05d1
chore: move log package out of internal (#289)
johnstcn Jul 29, 2024
5e10073
extract RunCacheProbe function (#284)
johnstcn Jul 31, 2024
961bab7
feat: implement repo-mode (#290)
mafredri Aug 1, 2024
2304ce3
fix: always add COPY directives in DoCacheProbe (#293)
johnstcn Aug 2, 2024
45a17d8
chore: bump golang.org/x/crypto from 0.24.0 to 0.25.0 (#267)
dependabot[bot] Aug 2, 2024
908d7c6
fix: only use repo mode in cache probe mode (#294)
mafredri Aug 2, 2024
069a0aa
fix: nil ptr deref in Run and RunCacheProbe (#295)
mafredri Aug 2, 2024
303ce81
feat: support starting from an already-built image (#296)
johnstcn Aug 3, 2024
2a59ce0
add hidden remote repo dir option to change clone path (#297)
mafredri Aug 5, 2024
e7acbad
feat: embed version info into binary (#298)
johnstcn Aug 5, 2024
eab2f9a
chore: bump github.com/skeema/knownhosts from 1.2.2 to 1.3.0 (#300)
dependabot[bot] Aug 8, 2024
fd910d5
chore: bump github.com/google/go-containerregistry from 0.19.1 to 0.2…
dependabot[bot] Aug 8, 2024
ca80682
ci: fix version script and update release.yaml (#303)
johnstcn Aug 7, 2024
8b7974b
chore(deps): update kaniko (#301)
johnstcn Aug 7, 2024
65f2289
chore(ci): fix issue with checkout action (#306)
johnstcn Aug 8, 2024
618ea11
fixup! ci: fix version script and update release.yaml (#303)
johnstcn Aug 8, 2024
fda6bb5
chore(docs): s/ENVBUILDER_GIT_SSH_KEY_PATH/ENVBUILDER_GIT_SSH_PRIVATE…
johnstcn Aug 9, 2024
4002758
fix: prevent git progress writer race reading stageNumber (#309)
mafredri Aug 12, 2024
59f0fae
fix(log): increase coder rpcConnectTimeout to 30s (#313)
johnstcn Aug 12, 2024
e6283db
fix(envbuilder): RunCacheProbe: remove references to constants.MagicD…
johnstcn Aug 14, 2024
cd63d0b
chore(deps): update kaniko to address Docker CVE (#318)
johnstcn Aug 15, 2024
f092019
chore: bump golang.org/x/sync from 0.7.0 to 0.8.0 (#310)
dependabot[bot] Aug 15, 2024
f62389c
chore: bump github.com/docker/docker from 26.1.0+incompatible to 26.1…
dependabot[bot] Aug 15, 2024
23d086e
chore: bump golang.org/x/crypto from 0.25.0 to 0.26.0 (#311)
dependabot[bot] Aug 15, 2024
2966db0
fix(log): properly set logrus level (#327)
johnstcn Aug 27, 2024
4ef99c0
chore: update kaniko fork to fix multi-stage cache probing (#325)
mafredri Aug 30, 2024
eacf6c9
chore: bump github.com/docker/cli from 27.0.3+incompatible to 27.2.0+…
dependabot[bot] Aug 30, 2024
3f7bbf6
chore: update kaniko fork to fix 32-bit ARM build failure (#330)
johnstcn Aug 30, 2024
8c364f5
chore: bump golang.org/x/mod from 0.18.0 to 0.21.0 (#338)
dependabot[bot] Sep 9, 2024
fb50f83
fix: allow setting MagicDir in Options (#337)
johnstcn Sep 9, 2024
3d12008
fix: set DOCKER_CONFIG dynamically (#336)
johnstcn Sep 10, 2024
c31fd00
chore: remove remote-repo-dir option (#340)
mafredri Sep 10, 2024
4d0cc78
fix(devcontainer): parse user in multi-stage builds (#343)
mafredri Sep 12, 2024
7d9abfc
feat(git): log parsed gitURL and warn if local (#345)
johnstcn Sep 12, 2024
67fbe78
fix: improve cached image startup and cache features (#353)
mafredri Sep 24, 2024
b64b812
fix: allow caching run layers with no filesystem changes (#355)
mafredri Sep 25, 2024
2180807
fix: update kaniko to add cache fix (#354)
johnstcn Sep 25, 2024
7955333
fix: set env and run scripts when starting cached image (#359)
mafredri Sep 27, 2024
9ee20e7
fix: add preExec to Run (#368)
johnstcn Sep 27, 2024
03def87
fix: use openfile to explicitly set magic image perms (#370)
mafredri Sep 27, 2024
fc85306
Revert "fix: add preExec to Run (#368)" (#371)
johnstcn Sep 27, 2024
d9fcd53
chore(README.md): add notes regarding Coder integration (#341)
johnstcn Sep 10, 2024
feec224
chore(README.md): add instructions for local iteration without a Git …
johnstcn Sep 10, 2024
6ffa021
chore(docs/docker.md): update docs for DinD with Coder (#346)
johnstcn Sep 12, 2024
e4a8e4b
chore: update dind examples to use onCreateCommand (#350)
johnstcn Sep 19, 2024
47de9d1
chore(scripts/diagram.sh): export in PNG format as well (#356)
johnstcn Sep 25, 2024
ea779ad
docs: improve readme (#357)
BrunoQuaresma Sep 26, 2024
647ced3
docs: fix link in readme (#363)
mafredri Sep 26, 2024
e7bf77b
chore(README.md): remove logo (#362)
johnstcn Sep 30, 2024
b33c64c
fix: refactor coder logger to allow flush without deadlock (#375)
mafredri Sep 30, 2024
e9f46cc
revert: "fix: refactor coder logger to allow flush without deadlock (…
mafredri Sep 30, 2024
ef45828
reapply: "fix: refactor coder logger to allow flush without deadlock …
mafredri Sep 30, 2024
0ec371f
fix: quote output of init command and args to prevent multiline log (…
mafredri Oct 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 14 additions & 9 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,12 @@ jobs:
with:
go-version: "~1.22"

- name: Download Go modules
run: go mod download

- name: Lint
run: make -j lint

- name: Test
run: make test
docs:
Expand All @@ -51,8 +57,8 @@ jobs:
with:
go-version: "~1.22"

- name: Generate docs
run: make docs
- name: Generate env vars docs
run: make docs/env-variables.md

- name: Check for unstaged files
run: git diff --exit-code
Expand Down Expand Up @@ -93,24 +99,23 @@ jobs:
- name: Build
if: github.event_name == 'pull_request'
run: |
VERSION=$(./scripts/version.sh)-dev-$(git rev-parse --short HEAD)
BASE=ghcr.io/coder/envbuilder-preview
./scripts/build.sh \
--arch=amd64

./scripts/build.sh \
--arch=amd64 \
--base=$BASE \
--tag=$VERSION
--arch=arm64

./scripts/build.sh \
--arch=arm

- name: Build and Push
if: github.ref == 'refs/heads/main'
run: |
VERSION=$(./scripts/version.sh)-dev-$(git rev-parse --short HEAD)
BASE=ghcr.io/coder/envbuilder-preview

./scripts/build.sh \
--arch=amd64 \
--arch=arm64 \
--arch=arm \
--base=$BASE \
--tag=$VERSION \
--push
20 changes: 16 additions & 4 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,12 @@ jobs:
name: Build and publish
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

# Workaround for actions/checkout#1467
- name: Fetch tags
run: |
git fetch --tags --depth 1 --force

- name: Echo Go Cache Paths
id: go-cache-paths
Expand All @@ -44,11 +49,18 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and Push
- name: Get version
id: get-version
env:
ENVBUILDER_RELEASE: "t"
run: |
VERSION=$(./scripts/version.sh)
BASE=ghcr.io/coder/envbuilder
echo "ENVBUILDER_VERSION=$(./scripts/version.sh)" >> $GITHUB_OUTPUT

- name: Build and Push
env:
VERSION: "${{ steps.get-version.outputs.ENVBUILDER_VERSION }}"
BASE: "ghcr.io/coder/envbuilder"
run: |
./scripts/build.sh \
--arch=amd64 \
--arch=arm64 \
Expand Down
19 changes: 17 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,25 @@ PWD=$(shell pwd)
GO_SRC_FILES := $(shell find . -type f -name '*.go' -not -name '*_test.go')
GO_TEST_FILES := $(shell find . -type f -not -name '*.go' -name '*_test.go')
GOLDEN_FILES := $(shell find . -type f -name '*.golden')
SHELL_SRC_FILES := $(shell find . -type f -name '*.sh')
GOLANGCI_LINT_VERSION := v1.59.1

fmt: $(shell find . -type f -name '*.go')
go run mvdan.cc/gofumpt@v0.6.0 -l -w .

.PHONY: lint
lint: lint/go lint/shellcheck

.PHONY: lint/go
lint/go: $(GO_SRC_FILES)
go install github.com/golangci/golangci-lint/cmd/golangci-lint@$(GOLANGCI_LINT_VERSION)
golangci-lint run --timeout=10m

.PHONY: lint/shellcheck
lint/shellcheck: $(SHELL_SRC_FILES)
echo "--- shellcheck"
shellcheck --external-sources $(SHELL_SRC_FILES)

develop:
./scripts/develop.sh

Expand All @@ -18,10 +33,10 @@ build: scripts/envbuilder-$(GOARCH)
update-golden-files: .gen-golden

.gen-golden: $(GOLDEN_FILES) $(GO_SRC_FILES) $(GO_TEST_FILES)
go test . -update
go test ./options -update
@touch "$@"

docs: options.go
docs/env-variables.md: options/options.go options/options_test.go
go run ./scripts/docsgen/main.go

.PHONY: test
Expand Down
Loading
Loading