#5 Update to 3.5.10
Closed 4 months ago by zaitcev. Opened 5 months ago by zaitcev.
rpms/ zaitcev/etcd etcd/v3.5.10  into  rawhide

DNM: Continue fixing the CI
Pete Zaitcev • 5 months ago  
Update to 3.5.10
Pete Zaitcev • 5 months ago  
file modified
+1
@@ -16,3 +16,4 @@ 

  /man-3.4.14.tar.gz

  /etcd-3.5.0.tar.gz

  /etcd-3.5.5.tar.gz

+ /etcd-3.5.10.tar.gz

file modified
+2 -1
@@ -9,7 +9,7 @@ 

  # https://github.com/etcd-io/etcd

  %global goipath         go.etcd.io/etcd

  %global forgeurl        https://github.com/etcd-io/etcd

- Version:                3.5.5

+ Version:                3.5.10

  

  %gometa

  
@@ -41,6 +41,7 @@ 

  

  License:        Apache-2.0

  URL:            %{gourl}

+ # git archive -o ../etcd-3.5.10.tar.gz --prefix=etcd-3.5.10/ v3.5.10

What's the reason to use this rather than regular release tarball?

  Source0:        %{gosource}

  Source1:        %{name}.service

  Source2:        %{name}.conf

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (etcd-3.5.5.tar.gz) = 0e1d00a6c94b56cfb5e8f27172e749710938c0891eeaf3257e1dd22722e81d7402d44debb9784a1d330f900203e079956fcfe76e0e16f02a7d891e92f67976da

+ SHA512 (etcd-3.5.10.tar.gz) = fbc8535eb99280cfe717397dd856ee5039ec64f1fc98105c81225c4eb9420f0cee2e8d73968694228f28625bbde3f9ca2697cb4310f42cbed667044270d4e180

@@ -2,38 +2,39 @@ 

    tags:

      - classic

    tasks:

-     - include_tasks: tasks/update_os_vars.yml

-     - include_tasks: tasks/install_etcd_src.yml

-     - include_tasks: tasks/prepare_e2e.yml

-     - name: Run e2e test

-       shell: go test -timeout 10m -v ./e2e &> /var/tmp/test.log

-       args:

-         chdir: "{{ src_dir }}"

-       ignore_errors: true

-       environment:

-         GOPATH: "{{ src_dir }}/gopath:{{ go_path }}"

-         EXPECT_DEBUG: true

-     - always:

-       - name: Pull out the logs

-         fetch:

-           dest: "{{ artifacts }}/"

-           src: "/var/tmp/test.log"

-           flat: yes

-       - include_role:

-           name: remove_req_dir

-         vars:

-           path: "{{ item.path }}"

-           patterns: "{{ item.patterns }}"

-           file_type: directory

-         with_items:

+     - block:

+       - include_tasks: tasks/update_os_vars.yml

+       - include_tasks: tasks/install_etcd_src.yml

+       - include_tasks: tasks/prepare_e2e.yml

+       - name: Run e2e test

+         shell: go test -timeout 10m -v ./e2e &> /var/tmp/test.log

+         args:

+           chdir: "{{ src_dir }}"

+         ignore_errors: true

+         environment:

+           GOPATH: "{{ src_dir }}/gopath:{{ go_path }}"

+           EXPECT_DEBUG: true

+       always:

+         - name: Pull out the logs

+           fetch:

+             dest: "{{ artifacts }}/"

+             src: "/var/tmp/test.log"

+             flat: yes

+         - include_role:

+             name: remove_req_dir

+           vars:

+             path: "{{ item.path }}"

+             patterns: "{{ item.patterns }}"

+             file_type: directory

+           with_items:

                  - { path: "{{src_dir}}", patterns: ""}

                  - { path: "/var/tmp/cafile", patterns: ""}

                  - { path: "/tmp", patterns: "test*"}

-       - name: Check the results

-         shell: grep "^\-\-\- FAIL" "{{ artifacts}}"/test.log | awk '{print $3}'

-         register: failed_cases

-         ignore_errors: true

-       - name: Store failed cases

-         local_action: copy content={{ failed_cases.stdout }} dest={{ artifacts }}/failed_cases.log

-         when: failed_cases.stdout != ""

-         failed_when: failed_cases.stdout

+         - name: Check the results

+           shell: grep "^\-\-\- FAIL" "{{ artifacts}}"/test.log | awk '{print $3}'

+           register: failed_cases

+           ignore_errors: true

+         - name: Store failed cases

+           local_action: copy content={{ failed_cases.stdout }} dest={{ artifacts }}/failed_cases.log

+           when: failed_cases.stdout != ""

+           failed_when: failed_cases.stdout

The update is done by hand, with no changes to the 3.5.5 spec.
This commit closes the old FTBS bug bz#2171486 coincidentally.
See this scratch build:
https://koji.fedoraproject.org/koji/taskinfo?taskID=109325099

This PR includes some CI fixes, because they will not get tested
unless the scratch build passes, and the scratch build cannot
pass on 3.5.5. Although the 3.5.10 is flaky too, but it passes
at least sometimes.

BTW this is the flaking test in 3.5.10:
https://github.com/etcd-io/etcd/issues/16963

rebased onto 1bae9c9

5 months ago

Oh great. The 3.5.10 has a test that fails sometimes, an it tripped our %check for scratch build.
https://github.com/etcd-io/etcd/issues/16963

rebased onto f3e8237

5 months ago

What's the reason to use this rather than regular release tarball?

What's the reason to use this rather than regular release tarball?

Do they make a release tarball? The only thing I see is right-click on the tag and save at Github, which is the same as the "git archive" for the same tag.

rebased onto 9500ef4

5 months ago

Usually all tags and releaes can be downloaded directly from GitHub. In this case just changing the version is enough to download the sources.

$ fedpkg clone etcd
$ cd etcd
$ sed -i 's/3.5.5/3.5.10/' etcd.spec
$ spectool -g -R etcd.spec
Downloading: https://github.com/etcd-io/etcd/archive/v3.5.10/etcd-3.5.10.tar.gz
|   3.9 MiB Elapsed Time: 0:00:00                                                                                                                                                                                                                                                                                                                                                                                                          
Downloaded: etcd-3.5.10.tar.gz

$ sha512sum /home/mikel/rpmbuild/SOURCES/etcd-3.5.10.tar.gz 
965e8666653c6012643b01fd9e1bbd3b01294590985e91c54a81ea9f6940ebdf4d6c48f04b082a094e09b4959eba92e0bfed46d364ff54d8791ab7d42d2a725c  /home/mikel/rpmbuild/SOURCES/etcd-3.5.10.tar.gz

Very well, I understand. I'll remove the comment that calls out for "git archive".

HOWEVER

I've downloaded the file with the "spectool -g" per the above. And, I found that the resulting tarball is exactly identical to the one that I obtained with "git archive". Ironically enough, the sha sum will vary because of the gzip compression. If you uncompress the tarball, it's going to be the same in every byte.

If I didn't mention it in comment, you would never be able to prove that I didn't use the spectool. Of course I'm going to use spectool from now on for propriety sake. I filed a new PR for the v3.5.11, which is hopefully okay:
https://src.fedoraproject.org/rpms/etcd/pull-request/8

Pull-Request has been closed by zaitcev

4 months ago