Compare commits

...

10 Commits

Author SHA1 Message Date
David Abdurachmanov 8410265068
Merge remote-tracking branch 'up/f33' into f33-riscv64
Signed-off-by: David Abdurachmanov <david.abdurachmanov@gmail.com>
2021-07-11 18:27:09 +03:00
Alejandro Sáez 010e6cc156 Update to go1.15.13 2021-06-23 19:31:59 +02:00
Alejandro Sáez b2a8f76814 Update to go1.15.12 2021-05-10 10:50:21 +02:00
David Abdurachmanov dfd5f49607
Merge remote-tracking branch 'up/f33' into f33-riscv64
Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
2021-04-22 13:30:16 +03:00
Alejandro Sáez e15aaec1b1 Update to go1.15.11 2021-04-18 09:15:39 +02:00
Edjunior Machado 65d082e844 Introduce CI gating 2021-02-05 13:25:13 +01:00
Jakub Čajka 643bf673f2
Update to go1.15.8 2021-02-05 13:24:23 +01:00
Jakub Čajka cd2673fdad
Rebase to go1.15.7
Security fix for CVE-2021-3114 and CVE-2021-3115
Resolves: BZ#1918751, BZ#1918763
2021-01-26 11:04:23 +01:00
Jakub Čajka 3795b402b8
Rebase to go1.15.6
Resolves: BZ#1904238
2020-12-04 13:20:42 +01:00
David Abdurachmanov b1e6e9eeb2
Add support for riscv64
Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
2020-12-01 21:55:51 +02:00
10 changed files with 214 additions and 7 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

6
.gitignore vendored
View File

@ -95,3 +95,9 @@
/go1.15.3.src.tar.gz
/go1.15.4.src.tar.gz
/go1.15.5.src.tar.gz
/go1.15.6.src.tar.gz
/go1.15.7.src.tar.gz
/go1.15.8.src.tar.gz
/go1.15.11.src.tar.gz
/go1.15.12.src.tar.gz
/go1.15.13.src.tar.gz

19
gating.yaml Normal file
View File

@ -0,0 +1,19 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

View File

@ -1,7 +1,7 @@
%bcond_with bootstrap
# temporalily ignore test failures
# due to https://github.com/golang/go/issues/39466
%ifarch aarch64
%ifarch aarch64 riscv64
%bcond_without ignore_tests
%else
%bcond_with ignore_tests
@ -39,14 +39,14 @@
# Golang build options.
# Build golang using external/internal(close to cgo disabled) linking.
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x riscv64
%global external_linker 1
%else
%global external_linker 0
%endif
# Build golang with cgo enabled/disabled(later equals more or less to internal linking).
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x riscv64
%global cgo_enabled 1
%else
%global cgo_enabled 0
@ -104,12 +104,15 @@
%ifarch s390x
%global gohostarch s390x
%endif
%ifarch riscv64
%global gohostarch riscv64
%endif
%global go_api 1.15
%global go_version 1.15.5
%global go_version 1.15.13
Name: golang
Version: 1.15.5
Version: %{go_version}.0.riscv64
Release: 1%{?dist}
Summary: The Go Programming Language
# source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain
@ -536,7 +539,7 @@ export CGO_ENABLED=0
#endif
# make sure to not timeout
export GO_TEST_TIMEOUT_SCALE=2
export GO_TEST_TIMEOUT_SCALE=20
%if %{fail_on_tests}
./run.bash --no-rebuild -v -v -v -k
@ -608,6 +611,30 @@ fi
%endif
%changelog
* Sun Jul 11 2021 David Abdurachmanov <david.abdurachmanov@gmail.com> - 1.15.13-1.0.riscv64
- Add support for riscv64
* Wed Jun 23 2021 Alejandro Sáez <asm@redhat.com> - 1.15.13-1
- Update to go1.15.13
* Mon May 10 2021 Alejandro Sáez <asm@redhat.com> - 1.15.12-1
- Update to go1.15.12
* Sun Apr 18 2021 Alejandro Sáez <asm@redhat.com> - 1.15.11-1
- Update to go1.15.11
* Fri Feb 05 2021 Jakub Čajka <jcajka@redhat.com> - 1.15.8-1
- Update to go1.15.8
* Wed Jan 20 2021 Jakub Čajka <jcajka@redhat.com> - 1.15.7-1
- Rebase to go1.15.7
- Security fix for CVE-2021-3114 and CVE-2021-3115
- Resolves: BZ#1918751, BZ#1918763
* Fri Dec 04 2020 Jakub Čajka <jcajka@redhat.com> - 1.15.6-1
- Rebase to go1.15.6
- Resolves: BZ#1904238
* Fri Nov 13 2020 Jakub Čajka <jcajka@redhat.com> - 1.15.5-1
- Rebase to go1.15.5
- Security fix for CVE-2020-28362, CVE-2020-28367 and CVE-2020-28366

6
plans/ci.fmf Normal file
View File

@ -0,0 +1,6 @@
summary: CI Gating Plan
discover:
how: fmf
directory: tests
execute:
how: beakerlib

View File

@ -1 +1 @@
SHA512 (go1.15.5.src.tar.gz) = 8e1d71f628d364b949b1e124af8950a563bbe9d9ae73b94c66af6ce029f67c26e2654556c0c118d0bc8566af52a7e9ed736b4667bbef7ccdab2bd338c43e6eb4
SHA512 (go1.15.13.src.tar.gz) = 3f77716c9721afacb27daa175e236bb25cfc93602f1531df18938fad94bf4f59e81b81f53fa977c2ebc9a912942275a1106043133fec166965e72766b1638ba1

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/golang/Sanity/basic-smoke
# Description: basic smoke test for go
# Author: Edjunior Machado <emachado@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/golang/Sanity/basic-smoke
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Edjunior Machado <emachado@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: basic smoke test for go" >> $(METADATA)
@echo "Type: Sanity" >> $(METADATA)
@echo "TestTime: 5m" >> $(METADATA)
@echo "RunFor: golang" >> $(METADATA)
@echo "Requires: golang" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL6 -RHELClient5 -RHELServer5" >> $(METADATA)
@echo "Architectures: s390x x86_64 ppc64le aarch64" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,3 @@
PURPOSE of /tools/golang/Sanity/basic-smoke
Description: basic smoke test for go
Author: Edjunior Machado <emachado@redhat.com>

View File

@ -0,0 +1,13 @@
summary: basic smoke test for go
description: ''
contact:
- Edjunior Machado <emachado@redhat.com>
component:
- golang
test: ./runtest.sh
framework: beakerlib
recommend:
- golang
duration: 5m
extra-summary: /tools/golang/Sanity/basic-smoke
extra-task: /tools/golang/Sanity/basic-smoke

View File

@ -0,0 +1,68 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/golang/Sanity/basic-smoke
# Description: basic smoke test for go
# Author: Edjunior Machado <emachado@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="$(rpm -qf $(which go))"
# Conserve the non-zero return value through the pipe
set -o pipefail
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
rlRun "pushd $TmpDir"
rlPhaseEnd
rlPhaseStartTest
cat << EOF > $TmpDir/hello.go
package main
import "fmt"
func main() {
fmt.Println("hello world")
}
EOF
rlAssertExists "$TmpDir/hello.go"
rlRun "go run $TmpDir/hello.go |& tee $TmpDir/go-run-hello.out" 0 "Testing 'go run'"
rlAssertNotDiffer <(echo 'hello world') go-run-hello.out
rlRun "go build -o $TmpDir/hello $TmpDir/hello.go" 0 "Testing 'go build'"
rlAssertExists "hello"
rlRun "$TmpDir/hello |& tee $TmpDir/hello.out" 0 "Running binary"
rlAssertNotDiffer <(echo 'hello world') hello.out
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd