mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-18 11:00:25 +00:00
tests: in case 'go test' is run in a container, skip TestGetPIDLimit()
In (standard, non-privileged) container environments the /sys/fs/cgroup mountpoint is not available. This would cause the tests to fail, as TestGetPIDLimit() tries to write to the cgroup configuration. The test will work when run as root on a privileged container or directly on a host (as Travis CI does). Setting the CEPH_CSI_RUN_ALL_TESTS environment variable to a non-empty value will cause the test to be executed. Signed-off-by: Niels de Vos <ndevos@redhat.com>
This commit is contained in:
parent
15578432a4
commit
a1de56dbd3
@ -30,6 +30,8 @@ env:
|
|||||||
- MINIKUBE_VERSION=v1.6.0
|
- MINIKUBE_VERSION=v1.6.0
|
||||||
- CHANGE_MINIKUBE_NONE_USER=true
|
- CHANGE_MINIKUBE_NONE_USER=true
|
||||||
- KUBECONFIG=$HOME/.kube/config
|
- KUBECONFIG=$HOME/.kube/config
|
||||||
|
# set CEPH_CSI_RUN_ALL_TESTS to non-empty to run all tests
|
||||||
|
- CEPH_CSI_RUN_ALL_TESTS=true
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
- mkdir -p $GOPATH/bin
|
- mkdir -p $GOPATH/bin
|
||||||
|
@ -66,6 +66,10 @@ tests:
|
|||||||
|
|
||||||
`$ make test`
|
`$ make test`
|
||||||
|
|
||||||
|
Certain unit tests may require extended permissions or other external resources
|
||||||
|
that are not available by default. To run these tests as well, export the
|
||||||
|
environment variable `CEPH_CSI_RUN_ALL_TESTS=1` before running the tests.
|
||||||
|
|
||||||
You will need to provide unit tests and functional tests for your changes
|
You will need to provide unit tests and functional tests for your changes
|
||||||
wherever applicable.
|
wherever applicable.
|
||||||
|
|
||||||
|
@ -17,12 +17,18 @@ limitations under the License.
|
|||||||
package util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"os"
|
||||||
"testing"
|
"testing"
|
||||||
)
|
)
|
||||||
|
|
||||||
// minimal test to check if GetPIDLimit() returns an int
|
// minimal test to check if GetPIDLimit() returns an int
|
||||||
// changing the limit require root permissions, not tested
|
// changing the limit require root permissions, not tested
|
||||||
func TestGetPIDLimix(t *testing.T) {
|
func TestGetPIDLimit(t *testing.T) {
|
||||||
|
runTest := os.Getenv("CEPH_CSI_RUN_ALL_TESTS")
|
||||||
|
if runTest == "" {
|
||||||
|
t.Skip("not running test that requires root permissions and cgroup support")
|
||||||
|
}
|
||||||
|
|
||||||
limit, err := GetPIDLimit()
|
limit, err := GetPIDLimit()
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user