Skip to content

release version v0.7 #8

release version v0.7

release version v0.7 #8

Workflow file for this run

name: avcut CI tags
on:
push:
tags:
- 'v*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install ffmpeg
run: |
sudo apt-get install -y libavcodec-dev libavformat-dev libavutil-dev
sudo apt-get install -y gcc-arm-linux-gnueabihf
- name: set variables
run: |
echo "::set-output name=avcut_version::$(make version)"
echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
echo "::set-output name=debarch::$(dpkg --print-architecture)"
echo "::set-output name=archive_file::avcut_$(make version)_$(dpkg --print-architecture).tgz"
echo "::set-output name=ffmpeg_build_date::2024-02-01-12-46"
echo "::set-output name=ffmpeg_name::ffmpeg-n5.1.4-2-gdd885ab2f5-win64-gpl-shared-5.1"
id: avcut_variables
- name: Install mingw
run: |
sudo apt-get install -y mingw-w64-i686-dev mingw-w64-tools mingw-w64 pkg-config
- name: fetch ffmpeg4win
run: |
wget "https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-${{ steps.avcut_variables.outputs.ffmpeg_build_date }}/${{ steps.avcut_variables.outputs.ffmpeg_name }}.zip"
unzip ${{ steps.avcut_variables.outputs.ffmpeg_name }}.zip
- name: make
run: >
PKG_CONFIG_PATH=${{ steps.avcut_variables.outputs.ffmpeg_name }}/lib/pkgconfig/
PKG_CONFIG_SYSROOT=${{ steps.avcut_variables.outputs.ffmpeg_name }}/
make CROSS_COMPILE=x86_64-w64-mingw32- ;
ls -lsh avcut.exe;
mv avcut.exe avcut-${{ steps.avcut_variables.outputs.avcut_version }}.${{ steps.avcut_variables.outputs.sha_short }}.exe;
- name: wininfo
run: >
echo "Download: https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-${{ steps.avcut_variables.outputs.ffmpeg_build_date }}/${{ steps.avcut_variables.outputs.ffmpeg_name }}.zip" > avcut_ffmpeg_libs_url.txt;
echo "and put the DLLs from the bin directory into the same folder as avcut." >> avcut_ffmpeg_libs_url.txt;
- name: make
run: make
- name: make
run: |
mkdir destdir
make install DESTDIR=destdir
tar -C destdir -czf ${{ steps.avcut_variables.outputs.archive_file }} .
- name: release
uses: actions/create-release@v1
id: create_release
with:
draft: false
prerelease: false
release_name: ${{ github.ref }}
tag_name: ${{ github.ref }}
#body_path: CHANGELOG.md
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: upload linux artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ steps.avcut_variables.outputs.archive_file }}
asset_name: ${{ steps.avcut_variables.outputs.archive_file }}
asset_content_type: application/gzip
- uses: jiro4989/build-deb-action@v2
id: deb_stage
with:
package: 'avcut'
package_root: destdir
maintainer: 'avcut maintainer'
version: ${{ steps.avcut_variables.outputs.avcut_version }}
arch: ${{ steps.avcut_variables.outputs.debarch }}
depends: 'libavcodec, libavformat, libavutil'
desc: 'Frame-accurate video cutting with only small quality loss'
- name: upload deb artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ steps.deb_stage.outputs.file_name }}
asset_name: ${{ steps.deb_stage.outputs.file_name }}
asset_content_type: application/vnd.debian.binary-package
- name: upload changelog artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./ChangeLog.txt
asset_name: ChangeLog.txt
asset_content_type: text/markdown
- name: upload avcut.exe artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./avcut-${{ steps.avcut_variables.outputs.avcut_version }}.${{ steps.avcut_variables.outputs.sha_short }}.exe
asset_name: avcut-${{ steps.avcut_variables.outputs.avcut_version }}.${{ steps.avcut_variables.outputs.sha_short }}.exe
asset_content_type: application/vnd.microsoft.portable-executable
- name: upload avcut.exe description artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./avcut_ffmpeg_libs_url.txt
asset_name: avcut_ffmpeg_libs_url.txt
asset_content_type: text/markdown