GithubHelp home page GithubHelp logo

Comments (8)

partouf avatar partouf commented on July 22, 2024

For now im gonna copy paste current nightly to 10.0.1

from clang-builder.

apmorton avatar apmorton commented on July 22, 2024

This should be a non-issue if you just don't pass a revision to the build script when running the tagged build (or change the build name so the revision file doesn't exist if copying the admin daily builds script)

from clang-builder.

partouf avatar partouf commented on July 22, 2024

but I passed clang llvm build.sh llvm 10.0.1 or whatever order

from clang-builder.

partouf avatar partouf commented on July 22, 2024

it doesn't take into account the version tag when it comes to llvm

from clang-builder.

apmorton avatar apmorton commented on July 22, 2024

LAST_REVISION="${3}"

if you don't pass a previous revision to build.sh, there is nothing to compare to and it will always build.

The output you show above indicates you copied our admin-daily-build.sh and didn't change the build name to prevent that script from reading the revision file.

See comments in slack.

from clang-builder.

partouf avatar partouf commented on July 22, 2024

I don't think you understand. i get I needed to pass 10.0.1, I did. The problem is that the script does everything right up until it determines the logged version to build. Which only takes into account to commit revision, which totally makes sense! Why build the same thing twice! Except that a tag in git doesn't create a new commit hash, you have a commit hash and it may or not be tagged. In this case, the latest commit and the latest tag were one and the same. I could have waited a day or two and I wouldn't have noticed any of this.

from clang-builder.

apmorton avatar apmorton commented on July 22, 2024

I understand - I'm saying the scripts in this repo do not have any notion of previously built versions.

the arguments to build.sh are:

./build.sh "tag_to_build" "/path/to/output.tar.xz" "last_build_revision"

admin-daily-builds.sh in our infra repo is what handles keeping track of and passing the last_build_revision to this script.
If you don't pass last_build_revision, this script will ALWAYS build.

If you are using the method I showed to build tagged releases where you make a temp copy of admin-daily-builds.sh, you just need to make sure you pass in a unique build name (along with the correct tag to build).

# this will suffer the issue you describe here if the last build has the same commit as the tag given
build_latest clang clang build.sh 10.0.1

# this will always build
build_latest clang clang1001 build.sh 10.0.1

Alternatively, if you manually start the builder and run ce builder exec, just don't pass anything for the third argument of build.sh

ce builder exec -- \
	sudo docker run --rm --name "clang.build" \
	-v/home/ubuntu/.s3cfg:/root/.s3cfg:ro -e 'LOGSPOUT=ignore' \
	"compilerexplorer/clang-builder" \
        bash build.sh "10.0.1" s3://compiler-explorer/opt/

from clang-builder.

partouf avatar partouf commented on July 22, 2024

It took me a while to see it, but I get it now. It's not super intuitive, but I'm ok with doing it this way next time. Thanks!

from clang-builder.

Related Issues (8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.