Closed Bug 1453705 Opened 6 years ago Closed 6 years ago

copy the seamonkey-production branches buildbot-configs and buildbotcustom to new repos in hg.m.o/SeaMonkey

Categories

(Developer Services :: Mercurial: hg.mozilla.org, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: ewong, Assigned: sheehan)

Details

I'd like to request that the seamonkey-production branch of
https://hg.mozilla.org/{buildbot-configs, buildbotcustom} to
https://hg.mozilla.org/SeaMonkey/{buildbot-configs, buildbotcustom}
as default branch.

Thanks
:sheehan can you help here? (I'm assisting in human wrangling.)

firstly, a slight correction to c#0 - "hg.mozilla.org/build/{buildbot-configs,buildbotcustom} are the origin repos.

(fwiw, if we just get the new repos setup, its possible for SeaMonkey team or myself to do the in-repo branch dancing, though it may be better if we don't take csets not in the ancestry of `seamonkey-production` though, for human sanity.)

SCM access controls should mirror that of hg.m.o/SeaMonkey/puppet, and hooks should be setup just like these origin repos (build/buildbotcustom and build/buildbot-configs)
Flags: needinfo?(sheehan)
I have cloned https://hg.mozilla.org/build/buildbot{custom,-configs} to https://hg.mozilla.org/SeaMonkey/buildbot{custom,-configs} and set the hooks to match the origin repos. 

I only cloned the `seamonkey-production` branch over, however I did not set that branch to be the default branch.

SCM access controls are set to hg:scm_level_2 for both repos (the same as hg.m.o/SeaMonkey/puppet). I noticed that the undo.{bookmarks,branch,desc,dirstate} files in SeaMonkey/puppet have permissions ewong@pw-wspx.org:scm_level_2, I did not mirror those permissions but I figured I would mention it anyways.

Let me know if there are any issues or if anything else is needed.
Flags: needinfo?(sheehan)
Assignee: nobody → sheehan
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
(In reply to Connor Sheehan [:sheehan] from comment #2)
> I have cloned https://hg.mozilla.org/build/buildbot{custom,-configs} to
> https://hg.mozilla.org/SeaMonkey/buildbot{custom,-configs} and set the hooks
> to match the origin repos. 
> 
> I only cloned the `seamonkey-production` branch over, however I did not set
> that branch to be the default branch.
> 
> SCM access controls are set to hg:scm_level_2 for both repos (the same as
> hg.m.o/SeaMonkey/puppet). I noticed that the
> undo.{bookmarks,branch,desc,dirstate} files in SeaMonkey/puppet have
> permissions ewong@pw-wspx.org:scm_level_2, I did not mirror those
> permissions but I figured I would mention it anyways.
> 
> Let me know if there are any issues or if anything else is needed.

Thanks Connor!!  Appreciate it very much!
:sheehan, I just attempted to push a change to https://hg.mozilla.org/SeaMonkey/buildbot-configs,
and I got the following error:

$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs -e 'ssh -l ewong@pw-wspx.org'
pushing to ssh://hg.mozilla.org/SeaMonkey/buildbot-configs
searching for changes
remote: abort: could not lock working directory of /repo/hg/mozilla/SeaMonkey/buildbot-configs: Permission denied
abort: stream ended unexpectedly (got 0 bytes, expected 4)
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Flags: needinfo?(sheehan)
Permissions were still set to `scm_level_3` for buildbot-configs - I apologize for the oversight! 

The repo is now set to `scm_level_2`.
Status: REOPENED → RESOLVED
Closed: 6 years ago6 years ago
Flags: needinfo?(sheehan)
Resolution: --- → FIXED
(In reply to Connor Sheehan [:sheehan] from comment #5)
> Permissions were still set to `scm_level_3` for buildbot-configs - I
> apologize for the oversight! 
> 
> The repo is now set to `scm_level_2`.

Hi Connor, I'm still getting the same issue when I try:

$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs -e 'ssh -l ewong@pw-wspx.org'
pushing to ssh://hg.mozilla.org/SeaMonkey/buildbot-configs
searching for changes
remote: abort: could not lock working directory of /repo/hg/mozilla/SeaMonkey/buildbot-configs: Permission denied
abort: stream ended unexpectedly (got 0 bytes, expected 4)
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Was the seamonkey-production branch ever set as the default branch? Like I said in comment #2, I never made that change as I thought it was implied in comment #1 that the Seamonkey team was comfortable doing that portion.

If you could try `$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs -e 'ssh -l ewong@pw-wspx.org' -b seamonkey-production` and see if that works, or fix the branches and then try your command.

Another possibility is that the files that have ewong@pw-wspx.org:scm_level_2 permissions I mentioned in comment #2 in the origin repos need the same permissions in the new repos. I'm not sure this is the case but it's a possibility.

If none of the above works then there is some other issue - in that case could you try running your previous command with `--traceback` and paste the output here?
Flags: needinfo?(ewong)
(In reply to Connor Sheehan [:sheehan] from comment #7)
> Was the seamonkey-production branch ever set as the default branch? Like I
> said in comment #2, I never made that change as I thought it was implied in
> comment #1 that the Seamonkey team was comfortable doing that portion.

I've tried pushing the following change:

$ hg pull ; hg update -r default
pulling from https://hg.mozilla.org/SeaMonkey/buildbot-configs
searching for changes
no changes found
0 files updated, 0 files merged, 0 files removed, 0 files unresolved

$ hg merge -r seamonkey-production
46 files updated, 0 files merged, 50 files removed, 0 files unresolved
(branch merge, don't forget to commit)

$ hg commit -m "Merging seamonkey-production into default"

$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs -e 'ssh -l ewong@pw-wspx.org'
pushing to ssh://hg.mozilla.org/SeaMonkey/buildbot-configs
searching for changes
remote: abort: could not lock working directory of /repo/hg/mozilla/SeaMonkey/buildbot-configs: Permission denied
abort: stream ended unexpectedly (got 0 bytes, expected 4)


> 
> If you could try `$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs
> -e 'ssh -l ewong@pw-wspx.org' -b seamonkey-production` and see if that
> works, or fix the branches and then try your command.
> 
> Another possibility is that the files that have
> ewong@pw-wspx.org:scm_level_2 permissions I mentioned in comment #2 in the
> origin repos need the same permissions in the new repos. I'm not sure this
> is the case but it's a possibility.
> 
> If none of the above works then there is some other issue - in that case
> could you try running your previous command with `--traceback` and paste the
> output here?

$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs -e 'ssh -l ewong@pw-wspx.org' -b seamonkey-production --traceback
pushing to ssh://hg.mozilla.org/SeaMonkey/buildbot-configs
searching for changes
remote: abort: could not lock working directory of /repo/hg/mozilla/SeaMonkey/buildbot-configs: Permission denied
Traceback (most recent call last):
  File "e:\mozbuild\python\lib\site-packages\mercurial\scmutil.py", line 146, in callcatch
    return func()
  File "e:\mozbuild\python\lib\site-packages\mercurial\dispatch.py", line 285, in _runcatchfunc
    return _dispatch(req)
  File "e:\mozbuild\python\lib\site-packages\mercurial\dispatch.py", line 912, in _dispatch
    cmdpats, cmdoptions)
  File "e:\mozbuild\python\lib\site-packages\mercurial\dispatch.py", line 648, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "e:\mozbuild\python\lib\site-packages\mercurial\extensions.py", line 231, in closure
    return func(*(args + a), **kw)
  File "e:\mozbuild\python\lib\site-packages\hgext\pager.py", line 69, in pagecmd
    return orig(ui, options, cmd, cmdfunc)
  File "e:\mozbuild\python\lib\site-packages\mercurial\dispatch.py", line 920, in _runcommand
    return cmdfunc()
  File "e:\mozbuild\python\lib\site-packages\mercurial\dispatch.py", line 909, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)
  File "e:\mozbuild\python\lib\site-packages\mercurial\util.py", line 1080, in check
    return func(*args, **kwargs)
  File "e:\mozbuild\python\lib\site-packages\mercurial\extensions.py", line 231, in closure
    return func(*(args + a), **kw)
  File "e:\mozbuild\python\lib\site-packages\mercurial\util.py", line 1080, in check
    return func(*args, **kwargs)
  File "e:\mozbuild\python\lib\site-packages\hgext\mq.py", line 3546, in mqcommand
    return orig(ui, repo, *args, **kwargs)
  File "e:\mozbuild\python\lib\site-packages\mercurial\util.py", line 1080, in check
    return func(*args, **kwargs)
  File "e:\mozbuild\python\lib\site-packages\mercurial\commands.py", line 4127, in push
    opargs=opts.get('opargs'))
  File "e:\mozbuild\python\lib\site-packages\mercurial\exchange.py", line 481, in push
    _pushbundle2(pushop)
  File "e:\mozbuild\python\lib\site-packages\mercurial\exchange.py", line 908, in _pushbundle2
    stream, ['force'], pushop.remote.url())
  File "e:\mozbuild\python\lib\site-packages\mercurial\wireproto.py", line 444,in unbundle
    ret = bundle2.getunbundler(self.ui, stream)
  File "e:\mozbuild\python\lib\site-packages\mercurial\bundle2.py", line 661, in getunbundler
    magicstring = changegroup.readexactly(fp, 4)
  File "e:\mozbuild\python\lib\site-packages\mercurial\changegroup.py", line 43, in readexactly
    % (len(s), n))
Abort: stream ended unexpectedly (got 0 bytes, expected 4)
abort: stream ended unexpectedly (got 0 bytes, expected 4)


I tried making a small change in default's README, and tried committing:

$ hg push ssh://hg.mozilla.org/SeaMonkey/buildbot-configs -e 'ssh -l ewong@pw-w
spx.org'
pushing to ssh://hg.mozilla.org/SeaMonkey/buildbot-configs
searching for changes
remote: abort: could not lock working directory of /repo/hg/mozilla/SeaMonkey/bu
ildbot-configs: Permission denied
abort: stream ended unexpectedly (got 0 bytes, expected 4)


It doesn't look like I can push anything.
Flags: needinfo?(ewong)
I've re-run the repo permissions script and replicated to the hgweb mirrors again. Try the pull/push once more just in case something slipped through last time.

If that doesn't work my next thought is that there may be something wrong with SSH validation layer and not the repo permissions. I can see your account has the correct permissions on the server, and I can see that the permissions on the repo are set correctly via https://hg.mozilla.org/SeaMonkey/buildbot{custom,-config}/json-repoinfo. 

Can you push to any other repos on hg.mozilla.org? If you run `ssh -l ewong@pw-wspx.org hg.mozilla.org`, do you see information about your account and the LDAP groups you belong to?
Flags: needinfo?(ewong)
(In reply to Connor Sheehan [:sheehan] from comment #9)
> I've re-run the repo permissions script and replicated to the hgweb mirrors
> again. Try the pull/push once more just in case something slipped through
> last time.
> 
> If that doesn't work my next thought is that there may be something wrong
> with SSH validation layer and not the repo permissions. I can see your
> account has the correct permissions on the server, and I can see that the
> permissions on the repo are set correctly via
> https://hg.mozilla.org/SeaMonkey/buildbot{custom,-config}/json-repoinfo. 
> 
> Can you push to any other repos on hg.mozilla.org?

I just made a simple change to the README in build/buildbot-configs ' seamonkey-production
branch and pushed it:

$ hg push ssh://hg.mozilla.org/build/buildbot-configs -e 'ssh -l ewong@pw-wspx.org'
pushing to ssh://hg.mozilla.org/build/buildbot-configs
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 1 changes to 1 files
remote: recorded push in pushlog
remote:
remote: View your change here:
remote:   https://hg.mozilla.org/build/buildbot-configs/rev/4883f2f254836932816d51ec479caf58bcdaeb55
remote: recorded changegroup in replication log in 0.005s

> If you run `ssh -l
> ewong@pw-wspx.org hg.mozilla.org`, do you see information about your account
> and the LDAP groups you belong to?

This is what I see:

$ ssh -l ewong@pw-wspx.org hg.mozilla.org
A SSH connection has been successfully established.

Your account (ewong@pw-wspx.org) has privileges to access Mercurial over SSH.

You are a member of the following LDAP groups that govern source control
access:

   scm_level_1, scm_level_2, scm_level_3

This will give you write access to the following repos:

   Firefox Repos (mozilla-central, releases/*), Project Repos (projects/), Try, User Repos (users/)

You will NOT have write access to the following repos:

   Autoland (integration/autoland), Localization Repos (releases/l10n/*, others)


You did not specify a command to run on the server. This server only
supports running specific commands. Since there is nothing to do, you
are being disconnected.
Connection to hg.mozilla.org closed.

I can also push to https://hg.mozilla.org/SeaMonkey/{puppet, tools, seamonkey-project-org}.
Flags: needinfo?(ewong)
I looked into things as well and am at a loss to explain this failure. Filesystem permissions on the server look fine. I confirmed the user being used should have permissions to write to this repository.

I am perplexed :/
This is a mystery. I think the next step is to nuke the repo and retry.

ewong, can you a) confirm one final time that you cannot push to SeaMonkey/buildbot-configs and b) confirm that the repo is ok to nuke? 


I sincerely apologize if this bug is blocking your work.
Flags: needinfo?(ewong)
(In reply to Connor Sheehan [:sheehan] from comment #12)
> This is a mystery. I think the next step is to nuke the repo and retry.
> 
> ewong, can you a) confirm one final time that you cannot push to
> SeaMonkey/buildbot-configs and b) confirm that the repo is ok to nuke? 
> 
> 
> I sincerely apologize if this bug is blocking your work.

Ah, well whatever you did, I can now push to that repo.  Sorry for the bother.

And ditto with SeaMonkey/buildbotcustom.

Thanks for the help there!  Closing bug.
Status: REOPENED → RESOLVED
Closed: 6 years ago6 years ago
Flags: needinfo?(ewong)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.