Skip to content
This repository has been archived by the owner on Jan 19, 2024. It is now read-only.

Leap/CDT versioning, dynamic updates and packages #75

Merged
merged 17 commits into from
Dec 28, 2022
Merged

Conversation

mikelik
Copy link
Contributor

@mikelik mikelik commented Nov 28, 2022

I have added documentation how to install DUNE (without need of git clone) *.deb package:
https://github.com/AntelopeIO/DUNE/blob/710132b73b1123957fcaff66a7e826737ad7f9b4/README.md#Binary-Installation-on-Linux

Dune scripts are installed to /usr/opt/DUNE/.
Dune image is downloaded just before creation of the first container.

New functionalities:

  • added packaging scripts for creating DUNE *.deb package, example command: ./generate_package.sh deb ubuntu amd64
  • upgrade DUNE image with dune --upgrade
  • change CDT version with dune --cdt <version>
  • change leap version with dune --leap <version>
  • to build image with already prepared specific versions run bootstrap.sh script with below arguments, i.e. ./bootstrap.sh --leap=3.2.0 --cdt=3.1.0-rc1

MacOS packaging is separate task: #92
RPM and Chocolatey are separate task: #91

The example command that builds DUNE image with specific CDT/leap version:
docker build --no-cache --build-arg USER_ID=0 --build-arg GROUP_ID=0 --build-arg CDT_VERSION=3.1.0-rc1 --build-arg LEAP_VERSION=3.2.0 -f Dockerfile.unix -t dune

How to push out new DUNE image?
Added documentation https://github.com/AntelopeIO/DUNE/pull/75/files#diff-9c4ae3b5f6675180493e9a1a817baabf4c5314870a3fa67c9c6ab89186046a91

To do after this PR is merged:

@mikelik mikelik linked an issue Nov 28, 2022 that may be closed by this pull request
3 tasks
@mikelik mikelik marked this pull request as ready for review December 7, 2022 18:48
@mikelik mikelik changed the title Add possibility to change leap/CDT version Leap/CDT versioning, dynamic updates and packages Dec 9, 2022
@ScottBailey
Copy link
Contributor

ScottBailey commented Dec 19, 2022

Scripts should work from any directory. We can accomplish this with this code, for example:

SCRIPT=`readlink -f "$0"`
DIR=`dirname "$SCRIPT"`

@ScottBailey
Copy link
Contributor

In generate_packaging.sh, architecture should simply default to all.

@ScottBailey
Copy link
Contributor

This information:

docker tag dune ghcr.io/antelopeio/dune:latest
docker push ghcr.io/antelopeio/dune:latest
docker tag dune ghcr.io/antelopeio/dune:X.Y.Z
docker push ghcr.io/antelopeio/dune:X.Y.Z

Should go into doc/RELEASE.md or similarly named (could even go in TLD) and README.md should link to it.

README.md Show resolved Hide resolved
src/dune/args.py Outdated Show resolved Hide resolved
Copy link
Contributor

@ScottBailey ScottBailey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comments in changed files.

@ScottBailey ScottBailey self-requested a review December 20, 2022 14:02
Copy link
Contributor

@ScottBailey ScottBailey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comments.

@ScottBailey ScottBailey self-requested a review December 21, 2022 21:11
Copy link
Contributor

@ScottBailey ScottBailey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@mikelik
Copy link
Contributor Author

mikelik commented Dec 22, 2022

Thanks @ScottBailey.
As a follow up I have created two issues:

@mikelik mikelik self-assigned this Dec 22, 2022
packaging/generate_package.sh Outdated Show resolved Hide resolved
mkdir -p tmp

if [[ ${VARIANT} == "brew" ]]; then
. "$DIR"./generate_bottle.sh
Copy link

@dimas1185 dimas1185 Dec 23, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after I fixed manually path, I've got this error:

./generate_package.sh brew Error, unsupported OS X version

I have Monterey 12.6 was it intended?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I copied the scripts from CDT. After checking it seems that supported macOS versions are quite old.
We need to update the scripts. I have created new issue for it: #92

@mikelik
Copy link
Contributor Author

mikelik commented Dec 27, 2022

@dimas1185 I have moved MacOS packaging to separate issue (#92) so the current PR is not blocked.

Michal Lesiak and others added 17 commits December 28, 2022 09:12
Example command to build a DUNE image with specific versions:
docker build --no-cache --build-arg USER_ID=0 --build-arg GROUP_ID=0 --build-arg CDT_VERSION=3.1.0-rc1 --build-arg LEAP_VERSION=3.2.0 -f Dockerfile.unix -t dune

Alternatively run bootstrap.sh script with arguments, i.e.
./bootstrap.sh --leap=3.2.0 --cdt=3.1.0-rc1
Add prefix to package name because of a conflict with package "dune" from ocaml
@mikelik mikelik dismissed dimas1185’s stale review December 28, 2022 08:13

Moved out macOS packaging to separate issue: #92

@mikelik mikelik merged commit 4dc3eb2 into main Dec 28, 2022
@mikelik mikelik deleted the mikelik/versioning branch December 28, 2022 08:14
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Internal Tool Versioning, Dynamic Updates, and Packages
4 participants