Skip to content
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

Release - December 2017 - Target RC date: 2017-12-01 - name: 0.9.0 #3773

Closed
damienmg opened this issue Sep 20, 2017 · 52 comments
Closed

Release - December 2017 - Target RC date: 2017-12-01 - name: 0.9.0 #3773

damienmg opened this issue Sep 20, 2017 · 52 comments
Assignees
Labels

Comments

@damienmg
Copy link
Contributor

Release tracking bug for December 2017:

  • Target cut should be 1st of December (first business day of December)
  • Name: 0.9.0

/cc @dslomov. You are planned to be the RM for this one but as I said I could exchange would fit my schedule better.

@damienmg
Copy link
Contributor Author

So the nightly seems pretty broken right now: https://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/bazel/job/nightly/Downstream_projects/

I guess we won't be able to get a clean release tomorrow. I won't be able to follow up much as I am traveling today.

@philwo, current buildcop, FYI

@dslomov @ulfjack I guess this is case for having the build cop be the release manager too?

@philwo
Copy link
Member

philwo commented Nov 30, 2017

What is a build cop? Is that something different than the sheriff?

@damienmg
Copy link
Contributor Author

damienmg commented Nov 30, 2017 via email

@dslomov
Copy link
Contributor

dslomov commented Nov 30, 2017 via email

@philwo
Copy link
Member

philwo commented Nov 30, 2017

Ok! I’ll have a look at the open breakages and coordinate with Dmitry once I’m in the office in a few minutes.

@philwo
Copy link
Member

philwo commented Nov 30, 2017

The bazel-tests failure in process_wrapper-test should be fixed in the next nightly thanks to 89ec374

@philwo
Copy link
Member

philwo commented Nov 30, 2017

Is there anything that I can do to help get this sorted out?

@dslomov
Copy link
Contributor

dslomov commented Nov 30, 2017

See this update: #4173 (comment)
@iirina will investigate and we'll make a decision based on her fix.

@aj-michael
Copy link
Contributor

#4208 is breaking Android, and we don't have a fix yet.

@damienmg
Copy link
Contributor Author

damienmg commented Dec 4, 2017

So adding @iirina this week sheriff.

Status: candidate not possible, there was no nightly due to the disconnected mac slaves. The nightly is now running, I will update the status once it has run.

@damienmg
Copy link
Contributor Author

damienmg commented Dec 4, 2017

So the nightly failed in bootstrapping on a python error on gflags...

@damienmg
Copy link
Contributor Author

damienmg commented Dec 4, 2017

It happens only on Ubuntu 14.04, list of changes in the nightly:

  • Properly enforce one version for android_robolectric_test targets by (commit: 3c5581d)
  • Remove unused adb_jobs flag. (commit: bda9ada)
  • Match upstream python-gflags-3.1.0 imports (fixes pkg_tar fails to import gflags when using py3 #3816) (commit: fb15f0f)
  • Update python-gflags to version 3.1.1 (commit: 8fd0f4a)
  • Windows: Don't leak any handles from Bazel client to Bazel server (commit: 9c97bf9)
  • Avoid NPEs when providers are not found in JavaInfo. (commit: 49008a3)
  • Windows: Expose find_vc_path and find_msvc_tool function (commit: ff12a22)
  • Prevent git filegroup from choking on gitk temporary files. (commit: 062da5c)
  • Make AndroidSdkProvider.verifyPresence throw. (commit: 6a5669a)
  • Move IDL constant out of AndroidSemantics (commit: c69068a)
  • Remove duplicated method from AndroidBinary. (commit: dec0329)
  • Add user and system execution time to provide total CPU execution time (commit: 26bc282)

So fb15f0f and 8fd0f4a as likely culprits

@damienmg
Copy link
Contributor Author

damienmg commented Dec 4, 2017

So I got more time to investigate failures of the latest nightly that ran fully before the mac issues:

  • rules_go (and buildifier and buildtools) are failing likely due to 337f19c: i'll probably rollback and rollforward with fixing rules_go.
  • intellij is broken due to --incompatible_disallow_set_constructor disappearing coming from /cc @vladmos

The other failure seems to be rules_docker which should be fixed.

@jin
Copy link
Member

jin commented Dec 4, 2017

#4208 is also fixed.

@laszlocsomor laszlocsomor self-assigned this Dec 5, 2017
@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 5, 2017

Status: looking for a suitable baseline commit for the release candidate.

Details:

TODO(@laszlocsomor):

@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 5, 2017

Release notes edits:

  • removed "RELNOTES: None for Blaze users." entry
  • removed both (duplicate) relnotes coming from a7a9d56 and its rollback 944d4f7
  • removed duplicate relnotes from a rollback-commit 0dd27ab and its roll-forward 1e3d568
  • with advice from @vladmos , removed the relnotes from c5e9a47 in favor of 9bb93ee
  • removed relnotes from 7e5c4af because it has no observable effect on Bazel

@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 5, 2017

Created 0.9.0rc1:

(...)/release.sh create 0.9.0 ddd5ac16aeffa6c4693c348f73e7365240b1abc
Created 0.9.0rc1 on branch release-0.9.0.

@petemounce
Copy link
Contributor

curl https://releases.bazel.build/0.9.0/rc1/index.html

<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
</Error>

@laszlocsomor
Copy link
Contributor

Not yet pushed.

@petemounce
Copy link
Contributor

Ah, ok.

@laszlocsomor
Copy link
Contributor

@damienmg
Copy link
Contributor Author

damienmg commented Dec 6, 2017

FTR the global test for 0.9 is there: https://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/bazel/job/release/491/Downstream_projects/

@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 6, 2017

Need to cherrypick for RC2:

Maybe need to cherrypick (waiting for answer):

  • e4eb23f: update: @haxorz confirmed that no cherrypick is necessary
  • 67566e5: update: @lberki confirmed that this is unimportant and no cherrypick is necessary

@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 8, 2017

Need to cherrypick for rc3:

@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 8, 2017

Creating rc3. I'll update the thread when it's pushed.

  $ (...)/release.sh create 0.9.0 \
          ddd5ac16aeffa6c4693c348f73e7365240b1abc \
          2cf560f83922e6df9626ba3ee063c1caf6797548 \
          a2d2615362c65be98629b39ce39754a325ed1c42 \
          68c577afc2fb33b5e66b820bcc9043fed1071456 \
          766ba8adc4487f17ebfc081aeba6f34b18b53d6c
(...)
Created 0.9.0rc3 on branch release-0.9.0.

  $ (...)/release.sh push
(...)
To github.com:bazelbuild/bazel
   8e1f466e3..b1903dcb0  refs/notes/cherrypick -> refs/notes/cherrypick

@laszlocsomor
Copy link
Contributor

Pushed.
Post-submit test results: https://ci.bazel.io/job/bazel/job/release/559/Downstream_projects/

@laszlocsomor
Copy link
Contributor

The only post-submit failures are:

@petemounce
Copy link
Contributor

@laszlocsomor
Copy link
Contributor

Great, thanks Peter!

@laszlocsomor
Copy link
Contributor

@davidstanke and @ola-rozenfeld requested cherrypick for RC4:

@laszlocsomor
Copy link
Contributor

Created new RC and initiated push:

  $ (...)/release.sh create 0.9.0 \
          ddd5ac16aeffa6c4693c348f73e7365240b1abc \
          2cf560f83922e6df9626ba3ee063c1caf6797548 \
          a2d2615362c65be98629b39ce39754a325ed1c42 \
          68c577afc2fb33b5e66b820bcc9043fed1071456 \
          766ba8adc4487f17ebfc081aeba6f34b18b53d6c \
          a22d0e9c14e58b29d81f5a83bdcc6e5fce52eafe

I needed to resolve a merge conflict:

diff --cc src/test/shell/bazel/remote_execution_test.sh
index 601bcc9e0,5eadb1d1a..000000000
--- a/src/test/shell/bazel/remote_execution_test.sh
+++ b/src/test/shell/bazel/remote_execution_test.sh
@@@ -29,11 -30,10 +30,15 @@@ function set_up() 
    while [ $attempts -le 5 ]; do
      (( attempts++ ))
      worker_port=$(pick_random_unused_tcp_port) || fail "no port found"
++<<<<<<< HEAD
 +    hazelcast_port=$(pick_random_unused_tcp_port) || fail "no port found"
 +    "${bazel_data}/src/tools/remote_worker/remote_worker" \
++=======
+     "${bazel_data}/src/tools/remote/worker" \
++>>>>>>> a22d0e9c1... Fix: uploading artifacts of failed actions to remote cache stopped working.
          --work_path="${work_path}" \
          --listen_port=${worker_port} \
-         --hazelcast_standalone_listen_port=${hazelcast_port} \
+         --cas_path=${cas_path} \
          --pid_file="${pid_file}" >& $TEST_log &
      local wait_seconds=0
      until [ -s "${pid_file}" ] || [ "$wait_seconds" -eq 15 ]; do

Per advice from @ola-rozenfeld , I resolved it as:

   while [ $attempts -le 5 ]; do
      (( attempts++ ))
      worker_port=$(pick_random_unused_tcp_port) || fail "no port found"
      "${bazel_data}/src/tools/remote_worker/remote_worker" \
            --work_path="${work_path}" \
            --listen_port=${worker_port} \
            --cas_path=${cas_path} \
            --pid_file="${pid_file}" >& $TEST_log &

@laszlocsomor
Copy link
Contributor

laszlocsomor commented Dec 12, 2017

Cherrypick request for RC5:

  • CL 178732031 to fix bug 70522059 ("Bazel generates duplicated actions if java_common.compile is called twice")

@iirina
Copy link
Contributor

iirina commented Dec 12, 2017

CL 178732031 to fix bug 70522059 ("Bazel generates duplicated actions if java_common.compile is called twice")

Fix commit is 03964c8

@laszlocsomor
Copy link
Contributor

@iirina : Thanks!

RC4 push failed, and I messed up my local git clone, so I'm recreating RC4 from scratch. (I'm updating the release guide for future Bazel release managers; I'm pretty sure I know what I'm doing.)

  $ (...)/release.sh create 0.9.0 \
          ddd5ac16aeffa6c4693c348f73e7365240b1abc \
          2cf560f83922e6df9626ba3ee063c1caf6797548 \
          a2d2615362c65be98629b39ce39754a325ed1c42 \
          68c577afc2fb33b5e66b820bcc9043fed1071456 \
          766ba8adc4487f17ebfc081aeba6f34b18b53d6c \
          a22d0e9c14e58b29d81f5a83bdcc6e5fce52eafe \
          03964c8ccb20d673add76c7f37245e837c3899b6

@laszlocsomor
Copy link
Contributor

@laszlocsomor
Copy link
Contributor

Unfortunately, the cherrypick a22d0e9 needs the commit that added the //src/tools/remote package, namely 2f3d7df. I'll create RC5 with that in it. /cc @ola-rozenfeld

https://ci.bazel.io/job/Global/job/bazel-tests/403/consoleFull

[node=linux-x86_64] ERROR: /home/ci/workspace/Global/bazel-tests-node=linux-x86_64/src/test/shell/bazel/BUILD:423:1: no such package 'src/tools/remote': BUILD file not found on package path and referenced by '//src/test/shell/bazel:remote_execution_rest_test'

@laszlocsomor
Copy link
Contributor

Ha! Including 2f3d7df got rid of the merge conflict from a22d0e9 in RC4.

Created RC5 and initiated push. CI started building: https://ci.bazel.io/job/bazel/job/release/603/

  $ (...)/release.sh create 0.9.0 ddd5ac16aeffa6c4693c348f73e7365240b1abc 2cf560f83922e6df9626ba3ee063c1caf6797548 a2d2615362c65be98629b39ce39754a325ed1c42 68c577afc2fb33b5e66b820bcc9043fed1071456  766ba8adc4487f17ebfc081aeba6f34b18b53d6c 2f3d7df5750ec7f3ac293c92c31d2969af2dd1cf a22d0e9c14e58b29d81f5a83bdcc6e5fce52eafe 03964c8ccb20d673add76c7f37245e837c3899b6                                                                 
remote: Counting objects: 3443, done        
remote: Finding sources: 100% (28/28)           
remote: Total 28 (delta 11), reused 28 (delta 11)        
From sso://bazel/bazel
 * branch                master     -> FETCH_HEAD
Creating new release branch release-0.9.0 for release 0.9.0
Switched to and reset branch 'release-0.9.0'
Applying cherry-picks
  Cherry-picking 2cf560f83922e6df9626ba3ee063c1caf6797548
  Cherry-picking a2d2615362c65be98629b39ce39754a325ed1c42
  Cherry-picking 68c577afc2fb33b5e66b820bcc9043fed1071456
  Cherry-picking 766ba8adc4487f17ebfc081aeba6f34b18b53d6c
  Cherry-picking 2f3d7df5750ec7f3ac293c92c31d2969af2dd1cf
  Cherry-picking a22d0e9c14e58b29d81f5a83bdcc6e5fce52eafe
  Cherry-picking 03964c8ccb20d673add76c7f37245e837c3899b6
Creating release notes
Created 0.9.0rc5 on branch release-0.9.0.

  $ (...)/release.sh push
...
To github.com:bazelbuild/bazel
   243833b91..ac65b44c5  refs/notes/cherrypick -> refs/notes/cherrypick

@ola-rozenfeld
Copy link
Contributor

ola-rozenfeld commented Dec 12, 2017 via email

@laszlocsomor
Copy link
Contributor

OK, I created RC6 without 2f3d7df and with manual edits while cherrypicking a22d0e9 in order to resolve the merge conflict (same way as earlier) and to change references of src/tools/remote{,/remote} to src/tools/remote_worker{,/remote_worker}:

  $ (...)/release.sh create 0.9.0 ddd5ac16aeffa6c4693c348f73e7365240b1abc 2cf560f83922e6df9626ba3ee063c1caf6797548 a2d2615362c65be98629b39ce39754a325ed1c42 68c577afc2fb33b5e66b820bcc9043fed1071456  766ba8adc4487f17ebfc081aeba6f34b18b53d6c a22d0e9c14e58b29d81f5a83bdcc6e5fce52eafe 03964c8ccb20d673add76c7f37245e837c3899b6

@petemounce
Copy link
Contributor

RCs 4-6 inclusive are available from chocolatey.

@laszlocsomor
Copy link
Contributor

Great, thank you Peter!

@laszlocsomor
Copy link
Contributor

Post-submit tests are https://ci.bazel.io/job/bazel/job/release/617/
The only errors are:

I'll go ahead and push RC6 to release.

@laszlocsomor
Copy link
Contributor

Ooops, not yet. 2 weeks have not yet passed since RC1.
I'm pushing it tomorrow then.

@laszlocsomor
Copy link
Contributor

Pushed release:

@petemounce : Could you please update Chocolatey? Thanks!

@ilovezfs : I heard you were maintaining the Homebrew recipe. If that's indeed the case, thank you! Could you please update with 0.9.0? If you aren't, do you know who is?

@ilovezfs
Copy link
Contributor

Voilà Homebrew/homebrew-core#21879

@laszlocsomor
Copy link
Contributor

The last thing before we can close this bug is to update Chocolatey.

@petemounce
Copy link
Contributor

petemounce commented Dec 19, 2017

Sorry, did that earlier, forgot to actually comment. https://chocolatey.org/packages/bazel/

@laszlocsomor
Copy link
Contributor

Yay, thanks to both of you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests