Update tdlib #462
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Generate TdApi.java | |
on: | |
push: | |
branches: | |
- master | |
- develop | |
jobs: | |
build: | |
strategy: | |
matrix: | |
include: | |
- {os: ubuntu-22.04, arch: "linux/amd64", implementation: "tdlight"} | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Install ubuntu 22.04 dependencies | |
if: matrix.os == 'ubuntu-22.04' | |
uses: awalsh128/cache-apt-pkgs-action@latest | |
with: | |
packages: sudo make git zlib1g-dev libssl-dev gperf php-cli cmake openjdk-17-jdk clang-14 libc++-14-dev libc++abi-14-dev libgcc-11-dev libunwind-14-dev libclang-common-14-dev maven | |
version: 1.0 | |
- name: Install SSH key | |
uses: shimataro/ssh-key-action@v2 | |
with: | |
key: ${{ secrets.IG_SSH_KEY }} | |
name: id_rsa | |
known_hosts: ${{ secrets.IG_KNOWN_HOSTS }} | |
- uses: actions/checkout@v3 | |
with: | |
submodules: "recursive" | |
- name: Setup Java (Snapshot) | |
if: github.ref == 'refs/heads/develop' | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: temurin | |
server-id: mchv-snapshot-distribution | |
server-username: MAVEN_USERNAME | |
server-password: MAVEN_PASSWORD | |
cache: 'maven' | |
- name: Setup Java (Release) | |
if: github.ref != 'refs/heads/develop' | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: temurin | |
server-id: mchv-release-distribution | |
server-username: MAVEN_USERNAME | |
server-password: MAVEN_PASSWORD | |
cache: 'maven' | |
- name: Set up Maven | |
uses: stCarolas/[email protected] | |
with: | |
maven-version: 3.8.2 | |
- name: Setup variables | |
shell: bash | |
run: | | |
set -xeo pipefail | |
# ====== Variables | |
export REVISION=4.0.${{ github.run_number }} | |
export GH_MATRIX_OS=${{ matrix.os }} | |
export GH_MATRIX_ARCH=${{ matrix.arch }} | |
export IMPLEMENTATION_NAME=${{ matrix.implementation }} | |
echo "REVISION=$REVISION" >> $GITHUB_ENV | |
echo "BUILD_TYPE=$BUILD_TYPE" >> $GITHUB_ENV | |
echo "IMPLEMENTATION_NAME=$IMPLEMENTATION_NAME" >> $GITHUB_ENV | |
if [[ ! -z "$PATH" ]]; then | |
echo "PATH=$PATH" >> $GITHUB_ENV | |
fi | |
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV | |
echo "JAVA_INCLUDE_PATH=$JAVA_INCLUDE_PATH" >> $GITHUB_ENV | |
cat $GITHUB_ENV > github.env | |
- name: Build | |
shell: bash | |
run: | | |
set -xeo pipefail | |
echo "REVISION: $REVISION" | |
./.github/workflows/scripts/build_api.sh | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: tdlight-api-${{env.REVISION}}.jar | |
path: api/target/tdlight-api-${{env.REVISION}}.jar | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: tdlight-api-${{env.REVISION}}-legacy.jar | |
path: api/target-legacy/tdlight-api-${{env.REVISION}}-legacy.jar | |
- name: Deploy to Maven (Snapshot) | |
if: github.ref != 'refs/heads/master' | |
shell: bash | |
run: | | |
set -xeo pipefail | |
echo "REVISION: $REVISION" | |
echo "Building standard package" | |
mvn -B -f api/pom.xml clean package deploy -Drevision="$REVISION" | |
echo "Deploying legacy package" | |
mvn -B -f api/pom.xml clean package -Dlegacy=true -Drevision="$REVISION" | |
mvn -B org.apache.maven.plugins:maven-deploy-plugin:3.1.1:deploy-file -Durl=https://mvn.mchv.eu/repository/mchv-snapshot \ | |
-DrepositoryId=mchv-snapshot-distribution \ | |
-Dfile=api/target-legacy/tdlight-api-$REVISION-legacy.jar \ | |
-Dpackaging=pom \ | |
-DgroupId=it.tdlight \ | |
-DartifactId=tdlight-api \ | |
-Dversion=$REVISION \ | |
-Drevision=$REVISION \ | |
-Dclassifier=legacy \ | |
-Dlegacy=true | |
echo "Done." | |
env: | |
MAVEN_USERNAME: ${{ secrets.MCHV_USERNAME }} | |
MAVEN_PASSWORD: ${{ secrets.MCHV_TOKEN }} | |
- name: Deploy to Maven (Release) | |
if: github.ref == 'refs/heads/master' | |
shell: bash | |
run: | | |
set -xeo pipefail | |
echo "REVISION: $REVISION" | |
echo "Deploying standard package" | |
mvn -B -f api/pom.xml clean package deploy -Drevision="$REVISION" | |
echo "Deploying legacy package" | |
mvn -B -f api/pom.xml clean package -Dlegacy=true -Drevision="$REVISION" | |
mvn -B org.apache.maven.plugins:maven-deploy-plugin:3.1.1:deploy-file -Durl=https://mvn.mchv.eu/repository/mchv \ | |
-DrepositoryId=mchv-release-distribution \ | |
-Dfile=api/target-legacy/tdlight-api-$REVISION-legacy.jar \ | |
-Dpackaging=pom \ | |
-DgroupId=it.tdlight \ | |
-DartifactId=tdlight-api \ | |
-Dversion=$REVISION \ | |
-Drevision=$REVISION \ | |
-Dclassifier=legacy \ | |
-Dlegacy=true | |
echo "Deploying docs" | |
cd "./api/target/apidocs" | |
find . -name '*.html' -exec sed -i -r 's/<\/title>/<\/title>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><style>\n\t#memberSummary_tabpanel{overflow-x: auto;}\n\tli.blockList{overflow-x: auto;}\n\ttd.colLast div{max-width:30vw;}\n\t#search{width: 400px;max-width: 65vw;}\n\t.title,.subTitle,pre,.inheritance,h1,h2,h3,h4,h5,.memberSummary,.memberSignature,.typeSummary,.blockList,.contentContainer{white-space:normal;word-break:break-word;}\n\tul{padding-left:10px}\n<\/style>/' {} \; | |
git config --global init.defaultBranch master | |
git init | |
git checkout -b "tdlight" | |
git remote add origin "https://${DOCS_DEPLOY_USERNAME}:${DOCS_DEPLOY_PASSWORD}@git.ignuranza.net/tdlight-team/tdlight-docs" | |
git config user.email "[email protected]" | |
git config user.name "Andrea Cavalli" | |
git fetch --all | |
git reset --soft "origin/tdlight" || true | |
git add -A | |
git commit -m "Update javadocs" | |
git push --set-upstream origin "tdlight" | |
echo "Done." | |
env: | |
MAVEN_USERNAME: ${{ secrets.MCHV_USERNAME }} | |
MAVEN_PASSWORD: ${{ secrets.MCHV_TOKEN }} | |
DOCS_DEPLOY_USERNAME: ${{ secrets.DOCS_DEPLOY_USERNAME }} | |
DOCS_DEPLOY_PASSWORD: ${{ secrets.DOCS_DEPLOY_PASSWORD }} | |