[ci] Use Ubuntu 22.04 as `ubuntu-latest` at CI (fixes #5186) (#5288)

This commit is contained in:
Nikita Titov 2022-12-15 18:05:45 +03:00 коммит произвёл GitHub
Родитель 9afd8b937b
Коммит a17489328c
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
12 изменённых файлов: 412 добавлений и 370 удалений

Просмотреть файл

@ -42,13 +42,13 @@ else # Linux
iputils-ping \
jq \
libcurl4 \
libicu66 \
libssl1.1 \
libicu-dev \
libssl-dev \
libunwind8 \
locales \
netcat \
unzip \
zip
zip || exit -1
if [[ $COMPILER == "clang" ]]; then
sudo apt-get install --no-install-recommends -y \
clang \
@ -60,6 +60,10 @@ else # Linux
sudo locale-gen ${LANG}
sudo update-locale
fi
if [[ $TASK == "r-package" ]] && [[ $COMPILER == "clang" ]]; then
sudo apt-get install --no-install-recommends -y \
libomp-dev
fi
if [[ $TASK == "mpi" ]]; then
if [[ $IN_UBUNTU_LATEST_CONTAINER == "true" ]]; then
sudo apt-get update
@ -75,10 +79,10 @@ else # Linux
fi
if [[ $TASK == "gpu" ]]; then
if [[ $IN_UBUNTU_LATEST_CONTAINER == "true" ]]; then
sudo add-apt-repository ppa:mhier/libboost-latest -y
sudo apt-get update
sudo apt-get install --no-install-recommends -y \
libboost1.74-dev \
libboost-filesystem1.74-dev \
ocl-icd-opencl-dev
else # in manylinux image
sudo yum update -y

2
.github/workflows/linkchecker.yml поставляемый
Просмотреть файл

@ -17,7 +17,7 @@ env:
jobs:
check-links:
timeout-minutes: 60
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v3

2
.github/workflows/no-response.yml поставляемый
Просмотреть файл

@ -9,7 +9,7 @@ on:
jobs:
noResponse:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- uses: lee-dohm/no-response@v0.5.0
with:

2
.github/workflows/optional_checks.yml поставляемый
Просмотреть файл

@ -9,7 +9,7 @@ on:
jobs:
all-successful:
timeout-minutes: 120
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v3

2
.github/workflows/r_configure.yml поставляемый
Просмотреть файл

@ -9,7 +9,7 @@ jobs:
name: r-configure
timeout-minutes: 60
runs-on: ubuntu-latest
container: "ubuntu:20.04"
container: "ubuntu:22.04"
steps:
- name: Install essential software before checkout
run: |

24
.github/workflows/r_package.yml поставляемый
Просмотреть файл

@ -33,22 +33,22 @@ jobs:
################
# CMake builds #
################
- os: ubuntu-latest
- os: ubuntu-22.04
task: r-package
compiler: gcc
r_version: 3.6
build_type: cmake
- os: ubuntu-latest
- os: ubuntu-22.04
task: r-package
compiler: gcc
r_version: 4.2
build_type: cmake
- os: ubuntu-latest
- os: ubuntu-22.04
task: r-package
compiler: clang
r_version: 3.6
build_type: cmake
- os: ubuntu-latest
- os: ubuntu-22.04
task: r-package
compiler: clang
r_version: 4.2
@ -114,7 +114,7 @@ jobs:
toolchain: MSYS
r_version: 4.2
build_type: cran
- os: ubuntu-latest
- os: ubuntu-22.04
task: r-package
compiler: gcc
r_version: 4.2
@ -127,7 +127,7 @@ jobs:
################
# Other checks #
################
- os: ubuntu-latest
- os: ubuntu-22.04
task: r-rchk
compiler: gcc
r_version: 4.2
@ -151,7 +151,7 @@ jobs:
CTAN_MIRROR: https://ctan.math.illinois.edu/systems/win32/miktex
TINYTEX_INSTALLER: TinyTeX
- name: Setup and run tests on Linux and macOS
if: matrix.os == 'macOS-latest' || matrix.os == 'ubuntu-latest'
if: matrix.os == 'macOS-latest' || matrix.os == 'ubuntu-22.04'
shell: bash
run: |
export TASK="${{ matrix.task }}"
@ -159,7 +159,7 @@ jobs:
export GITHUB_ACTIONS="true"
if [[ "${{ matrix.os }}" == "macOS-latest" ]]; then
export OS_NAME="macos"
elif [[ "${{ matrix.os }}" == "ubuntu-latest" ]]; then
elif [[ "${{ matrix.os }}" == "ubuntu-22.04" ]]; then
export OS_NAME="linux"
fi
export BUILD_DIRECTORY="$GITHUB_WORKSPACE"
@ -181,9 +181,9 @@ jobs:
$env:TASK = "${{ matrix.task }}"
& "$env:GITHUB_WORKSPACE/.ci/test_windows.ps1"
test-r-sanitizers:
name: r-sanitizers (ubuntu-latest, R-devel, ${{ matrix.compiler }} ASAN/UBSAN)
name: r-sanitizers (ubuntu-22.04, R-devel, ${{ matrix.compiler }} ASAN/UBSAN)
timeout-minutes: 60
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
container: wch1/r-debug
strategy:
fail-fast: false
@ -219,7 +219,7 @@ jobs:
test-r-debian-clang:
name: r-package (debian, R-devel, clang)
timeout-minutes: 60
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
container: rhub/debian-clang-devel
steps:
- name: Install Git before checkout
@ -248,7 +248,7 @@ jobs:
fi
all-successful:
# https://github.community/t/is-it-possible-to-require-all-github-actions-tasks-to-pass-without-enumerating-them/117957/4?u=graingert
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
needs: [test, test-r-sanitizers, test-r-debian-clang]
steps:
- name: Note that all tests succeeded

6
.github/workflows/static_analysis.yml поставляемый
Просмотреть файл

@ -21,7 +21,7 @@ env:
jobs:
test:
name: ${{ matrix.task }}
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
timeout-minutes: 60
strategy:
fail-fast: false
@ -47,7 +47,7 @@ jobs:
r-check-docs:
name: r-package-check-docs
timeout-minutes: 60
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
container: rocker/verse
steps:
- name: Trust git cloning LightGBM
@ -82,7 +82,7 @@ jobs:
fi
all-successful:
# https://github.community/t/is-it-possible-to-require-all-github-actions-tasks-to-pass-without-enumerating-them/117957/4?u=graingert
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
needs: [test, r-check-docs]
steps:
- name: Note that all tests succeeded

Просмотреть файл

@ -21,7 +21,7 @@ resources:
- container: linux-artifact-builder
image: lightgbm/vsts-agent:manylinux_2_28_x86_64
- container: ubuntu-latest
image: 'ubuntu:20.04'
image: 'ubuntu:22.04'
options: "--name ci-container -v /usr/bin/docker:/tmp/docker:ro"
- container: rbase
image: wch1/r-debug
@ -151,7 +151,7 @@ jobs:
OS_NAME: 'linux'
PRODUCES_ARTIFACTS: 'true'
pool:
vmImage: ubuntu-latest
vmImage: ubuntu-22.04
timeoutInMinutes: 180
strategy:
matrix:
@ -299,7 +299,7 @@ jobs:
###########################################
condition: not(startsWith(variables['Build.SourceBranch'], 'refs/pull/'))
pool:
vmImage: 'ubuntu-latest'
vmImage: 'ubuntu-22.04'
container: rbase
steps:
- script: |
@ -330,7 +330,7 @@ jobs:
- R_artifact
condition: and(succeeded(), not(startsWith(variables['Build.SourceBranch'], 'refs/pull/')))
pool:
vmImage: 'ubuntu-latest'
vmImage: 'ubuntu-22.04'
steps:
# Create archives with complete source code included (with git submodules)
- task: ArchiveFiles@2

Просмотреть файл

@ -1 +1 @@
2.69-11.1
2.71-2

Просмотреть файл

@ -352,22 +352,22 @@ This section briefly explains the key files for building a CRAN package. To upda
At build time, `configure` will be run and used to create a file `Makevars`, using `Makevars.in` as a template.
1. Edit `configure.ac`.
2. Create `configure` with `autoconf`. Do not edit it by hand. This file must be generated on Ubuntu 20.04.
2. Create `configure` with `autoconf`. Do not edit it by hand. This file must be generated on Ubuntu 22.04.
If you have an Ubuntu 20.04 environment available, run the provided script from the root of the `LightGBM` repository.
If you have an Ubuntu 22.04 environment available, run the provided script from the root of the `LightGBM` repository.
```shell
./R-package/recreate-configure.sh
```
If you do not have easy access to an Ubuntu 20.04 environment, the `configure` script can be generated using Docker by running the code below from the root of this repo.
If you do not have easy access to an Ubuntu 22.04 environment, the `configure` script can be generated using Docker by running the code below from the root of this repo.
```shell
docker run \
--rm \
-v $(pwd):/opt/LightGBM \
-w /opt/LightGBM \
-t ubuntu:20.04 \
-t ubuntu:22.04 \
./R-package/recreate-configure.sh
```

712
R-package/configure поставляемый

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -1,7 +1,7 @@
#!/bin/bash
# recreates 'configure' from 'configure.ac'
# this script should run on Ubuntu 20.04
# this script should run on Ubuntu 22.04
AUTOCONF_VERSION=$(cat R-package/AUTOCONF_UBUNTU_VERSION)
# R packages cannot have versions like 3.0.0rc1, but