Install packages

Documentation: eve-iac.io. Packages and source code are on GitLab (this website does not host the repository or registry).

Canonical names (eve-iac, @eve-iac/sdk, github.com/eve-iac/eve-iac/sdk/go) do not change. They are not on the public Python index, the public npm index, or a public Go module proxy. CI must not upload there. Copy the GitLab registry form below — a bare pip install eve-iac against public PyPI will not find this package.

Distribution for this repository is GitLab (gitlab.com/eve-ng-dev/eve-iac): Package Registry plus a Release on each git tag. CI never uploads to public indexes, Debian archives, or the VS Code Marketplace.

Local equivalents: make pack-sdk writes out/python/, out/npm/, and out/go/. make deb vsix writes the agent .deb and the VSIX into out/.

Agent / VSIX

sudo dpkg -i eve-iac-agent_0.9.0-1_amd64.deb

Install eve-iac-client-0.9.0.vsix with Install from VSIX. Both files come from the GitLab Release (or out/ after make deb vsix). Not a Debian archive, not the Marketplace. Operator steps: Install VS Code / Cursor.

Python / CLI

pip install "eve-iac==0.9.0" --index-url https://gitlab.com/api/v4/projects/eve-ng-dev%2Feve-iac/packages/pypi/simple
eve-iac --help

Private GitLab projects need a token on that index. Or install a Release / out/python/ wheel:

pip install eve_iac-0.9.0-py3-none-any.whl

Same wheel: from eveiac import EveIacClient and the eve-iac CLI.

TypeScript / Node

npm config set @eve-iac:registry https://gitlab.com/api/v4/projects/eve-ng-dev%2Feve-iac/packages/npm/
npm install @eve-iac/sdk

Or npm install ./eve-iac-sdk-0.9.0.tgz from a Release / out/npm/.

Go

Module identity (not a live GitHub Homepage):

github.com/eve-iac/eve-iac/sdk/go

Until that path exists on a public git remote, consume the Go SDK tarball from the GitLab Release or this generic URL (not out/ on your workstation):

curl -fsSL -O https://gitlab.com/api/v4/projects/eve-ng-dev%2Feve-iac/packages/generic/eve-iac/0.9.0/eve-iac-sdk-go-0.9.0.tar.gz
tar xzf eve-iac-sdk-go-0.9.0.tar.gz
go mod edit -replace github.com/eve-iac/eve-iac/sdk/go=./eve-iac-sdk-go-0.9.0
go get github.com/eve-iac/eve-iac/sdk/go@v0.0.0

go get …@v0.0.0 after replace records the require without fetching GitHub. GOPROXY=off avoids a public module proxy.

Do not change go.mod in this repository to a GitLab module path. Optional git rewrite if you fetch this GitLab repo as if it were the GitHub identity:

git config url.git@gitlab.com:eve-ng-dev/eve-iac.git.insteadOf https://github.com/eve-iac/eve-iac

Subdirectory modules then need a tag of the form sdk/go/vX.Y.Z. The tarball + replace path does not.

What a tag publishes

The product git tag is v0.9.0-1 (v + VERSION). GitLab Release, generic registry paths, and the agent .deb filename use that string. $CI_COMMIT_TAG that is not v0.9.0-1 is refused (packaging/check-metadata.sh, packaging/publish-gitlab.sh). CI toolchain tags (ci:vN) are not product releases. Correspondence: versioning.

The packages GitLab CI job (tags only) uploads:

Artifact Registry
eve-iac-agent_<X.Y.Z-R>_amd64.deb generic eve-iac
eve-iac-client-<X.Y.Z>.vsix generic eve-iac
eve_iac-<X.Y.Z>-py3-none-any.whl and sdist (SDK and eve-iac CLI) GitLab PyPI + generic eve-iac
eve-iac-sdk-<X.Y.Z>.tgz GitLab npm + generic
eve-iac-sdk-go-<X.Y.Z>.tar.gz generic (Go has no public proxy tag)

and creates a GitLab Release with those links. Not Marketplace, not a Debian archive, not public Python/npm indexes.