Jenkinsfile 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. pipeline {
  2. agent none
  3. stages {
  4. stage('BuildAndTest') {
  5. matrix {
  6. agent any
  7. axes {
  8. axis {
  9. name 'PHPVER'
  10. values '7.3.21', '7.4.9'
  11. }
  12. axis {
  13. name 'V8VER'
  14. values '7.9', '8.4', '8.6'
  15. }
  16. }
  17. stages {
  18. stage('Build') {
  19. steps {
  20. echo "Building w/ V8 ${V8VER}, PHP ${PHPVER} as Docker image ${BUILD_TAG}-${V8VER}-${PHPVER}"
  21. sh "docker build -f Dockerfile.jenkins --build-arg V8VER=${V8VER} --build-arg PHPVER=${PHPVER} -t ${BUILD_TAG}-${V8VER}-${PHPVER} ."
  22. }
  23. }
  24. stage('Test') {
  25. steps {
  26. echo "Running test on ${BUILD_TAG}-${V8VER}-${PHPVER}"
  27. sh "docker run --rm -t ${BUILD_TAG}-${V8VER}-${PHPVER} make test TESTS='ext/v8js/tests/*.phpt'"
  28. }
  29. }
  30. }
  31. }
  32. }
  33. }
  34. }