-
-
Notifications
You must be signed in to change notification settings - Fork 15.3k
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
gitlab: 12.1.6 -> 12.3.5, bundler: 1.17.2 -> 1.17.3 #70216
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great. I'll try testing it tonight.
pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
Show resolved
Hide resolved
I suspect that
|
@bgamari Ah, I'll see if I get the same result.. |
Actually, looking at my GitLab user's authorized keys file it refers to |
Indeed, false alarm. Simply running
resolved the issue. Things appear to be just peachy. |
Yeah, I wasn't able to reproduce it on my end, so that makes sense. :) |
"owner": "gitlab-org", | ||
"repo": "gitlab-ce", | ||
"rev": "v12.1.6", | ||
"repo": "gitlab-foss", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we really want to keep separate attrsets? It seems like gitlab-foss
is just a poorly-synced version of the gitlab
repo these days...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe not? It doesn't seem to be too poorly synced to me, but from what I've gathered, the only difference between them is that the gitlab
repo has an ee
directory which is removed from the tree when it's synced to gitlab-foss
...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, at least the git repo history is a bit less informative.
Obviously, Nix doesn't care much. However, after reading up on https://about.gitlab.com/2019/02/21/merging-ce-and-ee-codebases/, it should be safe to just remove the /ee
folder if we're not building the enterprise edition, so I'd advocate for having a conditional step in postUnpack
depending on the gitlabEnterprise
flag, and hardcode everything else to https://gitlab.com/gitlab-org/gitlab.
This would greatly simplify data.nix and the updater.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that states pretty clearly that all we have to do is get rid of the ee
folder, so I'll look into it. :)
I don't know anything about GitLab, but the Bundler update looked good
to me, so I've pushed that to master as 96a1dba.
|
I just pushed some minor changes:
|
Whoops, I accidentally commented on the old PR. In short, currently the NixOS systemd unit does not clear Also, there are some very strange migration issues which I had to work around. |
Can we bump this to 12.3.3? There has been another security release… |
I have tested the gitlab commit and it works nicely 👍 |
@flokli ..and now they've released 12.3.4! I'll update to it once the deb has been built. @bgamari Hm, yeah, that should definitely be purged on startup. I feel like it fits better into #68721, which already tries to address similar migration issues concerning the state directory. That PR also needs a bit of a push. :) |
For what it's worth I have tested this and it works well. |
- Update GitLab to 12.3.4 - Update update.py to cope with the new upstream repository structure - Refactor gitlab-shell to use buildGoPackage and bundlerEnv for dependencies - Refactor gitlab-workhorse to use buildGoPackage for dependencies - Make update.py able to update gitlab-shell and gitlab-workhorse dependencies - Various fixes necessary for update to work
Split the remove-hardcoded-locations patch into two separate patches, one for the ruby package and one for the go package. This is clearer and results in fewer rebuilds.
I just pushed some updates:
|
@talyz can you address #70216 (comment) too? |
@flokli Oh, sorry, I completely missed that. Will do. |
Thanks! |
Here goes 12.3.5.. |
Instead of extracting prebuilt assets from the debian build, build them from the source. This should give faster package updates and reduces the amount of data needed to be downloaded by more than 500MB.
@talyz poke about the repository updates ;-)
|
@flokli Yeah, I'm on it! :) |
GitLab recently restructured their repos; whereas previously they had one gitlab-ce and one gitlab-ee repo, they're now one and the same. All proprietary components are put into the ee subdirectory - removing it gives us the foss / community version of GitLab. For more info, see https://about.gitlab.com/2019/02/21/merging-ce-and-ee-codebases/ This gives us the opportunity to simplify things quite a bit, since we don't have to keep track of two separate versions of either the base data or rubyEnv.
Just pushed some changes - two major ones:
... and two smaller ones:
|
This isn't building, because apparently the hash is wrong:
(from hydra: https://hydra.nixos.org/build/102785558/nixlog/18 ) Could you have a look at that? |
@lheckemann Hm, strange. I'll look into it right away. |
@lheckemann Hm, it looks like the hash is different on macOS, for some reason? I can't reproduce this error on NixOS, at least. I also don't have any mac with just the right version of macOS at hand, so I can't verify that this is what happens. If this is the case, I think the reasonable thing to do is to limit |
@talyz try changing the hash to something different and re-run the build. If your /nix/store already has a fixed-output derivation with the given hash it won't try and re-download the dependency and you won't see the issue. |
@zimbatm Yeah, I know - I ran |
I can not reproduce the issue either even after cleaning the store. |
Extracted from NixOS#70216. (cherry picked from commit 96a1dba)
@lheckemann @zimbatm Well, I guess this solved itself, or someone poked around in hydra :) |
hehe, oh well :) |
Motivation for this change
dependencies
This would replace #69325
Things done
Manually built and tested both ce and ee on fresh nixops VirtualBox VMs. I would like to test it more thoroughly, but it seems to be working well in my quick tests.
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)Notify maintainers
cc @flokli @globin @bgamari @krav