Sorry, but why did you need to delete all sources?
Anyhow, it looks like just creating a PR doesn't trigger a build on Circle CI... I'll try to look at this and find what does, but it will take a bit longer before I find time for this.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
Because for building a release I need to build it from release source zip.
PR wouldn’t trigger build. Merging and accepting it should.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
The idea of integrating the build scripts into the repository would be to build the packages from the sources in the repository -- so that we could do it for testing even before the release (and then build the "real" packages using the tag corresponding to the release). Requiring to have the source archives doesn't make sense to me in this context.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
Exactly what I said
I think release should happen when beta packages on all major platforms are tested. For that you need continuous build of those
test packages. 3.3 and 3.2 branch both would benefit from such continuous build and package process.
The cost of finding bugs increases exponentially as you go into next stage of production. So most needs to be weeded out in development before the release.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
It should work on circle ci right away after accepting my changes and merging it into circleci-project-setup
source code is basically deleted from this branch. as it has only .circleci scripts and debian directory
I've commented out line which uploads to cloudsmith as I do not know your cloudsmith layout.
It should build on circle ci in 15-16 minutes
see pipeline results here https://app.circleci.com/pipelines/github/wxWidgets/wxWidgets
Thanks
https://github.com/wxWidgets/wxWidgets/pull/22675
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@mgrouch pushed 1 commit.
—
View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
My main problem right now is that, looking at the docs, there doesn't seem to be any way to only trigger a workflow manually on Circle CI, which would be a prerequisite for adding any workflow building the packages as we definitely don't want to do this on every commit.
The best I found was to add type: approval to the job, but I'm afraid that this will result in an accumulation of thousands of unapproved jobs with time, and I'm not sure if it's such a good idea.
I guess we could have a special build-debs branch with .circleci/config.yml building packages in it and just doing nothing in master and 3.2 (confusingly, the documentation says that nothing will be done for pushes to the branches without this file, but in practice this results in build failures and email notifications to me, that I'd rather not get for every push neither).
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@vadz requested changes on this pull request.
Looking at this, we can't really merge this PR in its current state, but perhaps we could reuse parts of it. AFAICS there are several different things here:
.github/workflows/ci_msw_cross.yml for running inside a container, but they seem much simpler and are at least somewhat commented. So while I would like to have a possibility to run the build for the given distro easily, it would be great if this could be simplified/streamlined/documented.It would be great if we could have something working along these lines, what do you think?
> @@ -0,0 +1,131 @@ +#!/usr/bin/env bash + +# +# Build for Debian in a docker container +# + +# bailout on errors and echo commands. +set -xe + +DOCKER_SOCK="unix:///var/run/docker.sock" + +echo "DOCKER_OPTS=\"-H tcp://127.0.0.1:2375 -H $DOCKER_SOCK -s overlay2\"" | sudo tee /etc/default/docker > /dev/null
It would be nice to explain what this does because I have no idea.
> +#!/usr/bin/env bash + +# +# Build for Debian in a docker container +# + +# bailout on errors and echo commands. +set -xe + +DOCKER_SOCK="unix:///var/run/docker.sock" + +echo "DOCKER_OPTS=\"-H tcp://127.0.0.1:2375 -H $DOCKER_SOCK -s overlay2\"" | sudo tee /etc/default/docker > /dev/null +sudo service docker restart +sleep 5; + +if [ "$EMU" = "on" ]; then
Do we need this? EMU probably stands for "emulation", but why should we emulate anything?
> + libjpeg-dev \ + libpng-dev \ + libtiff5-dev \ + libsm-dev \ + libexpat1-dev \ + libxt-dev \ + libcurl4-openssl-dev \ + libgstreamer1.0-dev \ + libgstreamer-plugins-base1.0-dev \ + libgstreamer-plugins-bad1.0-dev \ + libwebkit2gtk-4.0-dev \ + libnotify-dev \ + wget \ + doxygen \ + graphviz \ + meson \
We should need meson for building... nor cmake (installed above), or xsltproc.
It looks like many packages here are not really needed, it would be nice to restrict it to just the required ones, as it will make it simpler to update in the future.
> + - run: cd work && wget -nc -O - https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.0/wxWidgets-3.2.0.tar.bz2 > ../wxwidgets3.2_3.2.0+dfsg.orig.tar.bz2 + - run: cd work && bzip2 < ../wxwidgets3.2_3.2.0+dfsg.orig.tar.bz2 -cd | tar xvf -; shopt -s dotglob; mv wxWidgets-3.2.0/* .; rmdir wxWidgets-3.2.0 + - run: cd work && wget -nc -O - https://github.com/bareboat-necessities/wxWidgets/archive/master.tar.gz | gzip -cd - | tar xvf - ; mv *-master/debian .; mv *-master/.circleci ..
This needs to be replaced with an actual checkout step.
> - run: - name: "Say hello" - command: "echo Hello, World!" - -# Invoke jobs via workflows -# See: https://circleci.com/docs/2.0/configuration-reference/#workflows + command: | + .circleci/build-debian.sh + no_output_timeout: 30m + - cloudsmith/ensure-api-key
This will fail for us, won't it?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
You can use special branch. Have .circleci directory only in it. Manual merge into that branch would be effectively a manual trigger of circleci workflow
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@mgrouch commented on this pull request.
> +#!/usr/bin/env bash + +# +# Build for Debian in a docker container +# + +# bailout on errors and echo commands. +set -xe + +DOCKER_SOCK="unix:///var/run/docker.sock" + +echo "DOCKER_OPTS=\"-H tcp://127.0.0.1:2375 -H $DOCKER_SOCK -s overlay2\"" | sudo tee /etc/default/docker > /dev/null +sudo service docker restart +sleep 5; + +if [ "$EMU" = "on" ]; then
When CircleCi didn’t have arm support I would be building in qemu docker for armhf and arm64.
currently not used anymore
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
> + libjpeg-dev \ + libpng-dev \ + libtiff5-dev \ + libsm-dev \ + libexpat1-dev \ + libxt-dev \ + libcurl4-openssl-dev \ + libgstreamer1.0-dev \ + libgstreamer-plugins-base1.0-dev \ + libgstreamer-plugins-bad1.0-dev \ + libwebkit2gtk-4.0-dev \ + libnotify-dev \ + wget \ + doxygen \ + graphviz \ + meson \
Feel free to remove unnecessary
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@mgrouch commented on this pull request.
> + - run: cd work && wget -nc -O - https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.0/wxWidgets-3.2.0.tar.bz2 > ../wxwidgets3.2_3.2.0+dfsg.orig.tar.bz2 + - run: cd work && bzip2 < ../wxwidgets3.2_3.2.0+dfsg.orig.tar.bz2 -cd | tar xvf -; shopt -s dotglob; mv wxWidgets-3.2.0/* .; rmdir wxWidgets-3.2.0 + - run: cd work && wget -nc -O - https://github.com/bareboat-necessities/wxWidgets/archive/master.tar.gz | gzip -cd - | tar xvf - ; mv *-master/debian .; mv *-master/.circleci ..
Yes
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@mgrouch commented on this pull request.
> + - run: cd work && wget -nc -O - https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.0/wxWidgets-3.2.0.tar.bz2 > ../wxwidgets3.2_3.2.0+dfsg.orig.tar.bz2 + - run: cd work && bzip2 < ../wxwidgets3.2_3.2.0+dfsg.orig.tar.bz2 -cd | tar xvf -; shopt -s dotglob; mv wxWidgets-3.2.0/* .; rmdir wxWidgets-3.2.0 + - run: cd work && wget -nc -O - https://github.com/bareboat-necessities/wxWidgets/archive/master.tar.gz | gzip -cd - | tar xvf - ; mv *-master/debian .; mv *-master/.circleci ..
With recursive submodules
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
> - run: - name: "Say hello" - command: "echo Hello, World!" - -# Invoke jobs via workflows -# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
+ command: | + .circleci/build-debian.sh + no_output_timeout: 30m + - cloudsmith/ensure-api-key
You will need cloudsmith or some other place to upload build results.
so ppl could pick up packages and test
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
This PR has been in "work needed" state for more than a year and will be closed soon. Please update it, e.g. by commenting here, if anybody intends to resume working on it.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
Closed #22675.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()