Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions .github/aznfs-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ stages:
export STG_DIR=$(System.DefaultWorkingDirectory)
export SOURCE_DIR=$(System.DefaultWorkingDirectory)
export BUILD_TYPE=${{ parameters.buildType }}
export BUILD_MACHINE=ubuntu
chmod +x $SOURCE_DIR/generate_package.sh
$SOURCE_DIR/generate_package.sh
displayName: "Run Package Script"
Expand All @@ -79,6 +80,49 @@ stages:
PathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: 'aznfs-temp'

- job: package_aznfs_azurelinux_amd64
displayName: Package and Release ${{ parameters.versionName }} for azurelinux
pool:
name: 'aznfsazurelinuxdemopool' # Use your self-hosted agent

steps:
- checkout: self
path: azurelinux/AZNFS-mount
displayName: 'Checkout repository'

- script: |
echo "Installing prerequisites on Azure Linux..."
sudo tdnf update -y
sudo tdnf install -y glibc-static rpm-build perl perl-IPC-Cmd \
gcc gcc-c++ make git curl unzip zip tar cmake \
zlib zlib-devel libuuid-devel gnutls gnutls-devel nfs-utils \
libyaml-devel spdlog-devel nlohmann-json-devel cmake make \
pkgconf pkgconf-m4 pkgconf-pkg-config ninja-build binutils \
kernel-headers kernel-devel autoconf automake libtool jemalloc-devel fuse3-devel
displayName: "Install prerequisites on Azure Linux"

- script: |
export RELEASE_NUMBER=${{ parameters.versionName }}
export STG_DIR=$(System.DefaultWorkingDirectory)
export SOURCE_DIR=$(System.DefaultWorkingDirectory)
export BUILD_TYPE=${{ parameters.buildType }}
export BUILD_MACHINE=azurelinux
chmod +x $SOURCE_DIR/generate_package.sh
$SOURCE_DIR/generate_package.sh
displayName: "Run Package Script"

- script: |
mkdir -p $(Build.ArtifactStagingDirectory)/artifacts/rpmazurelinux
cp -f $(System.DefaultWorkingDirectory)/azurelinux/root/rpmbuild/RPMS/x86_64/aznfs-${{ parameters.versionName }}-1.x86_64.rpm $(Build.ArtifactStagingDirectory)/artifacts/rpmazurelinux
echo "Listing Built Files..."
ls -R $(Build.ArtifactStagingDirectory)
displayName: "Copy RPM to Artifacts"

- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: 'aznfs-temp'

- job: package_aznfs_arm64
displayName: Package and Release ${{ parameters.versionName }} for arm64
pool:
Expand All @@ -103,6 +147,7 @@ stages:
export STG_DIR=$(System.DefaultWorkingDirectory)
export SOURCE_DIR=$(System.DefaultWorkingDirectory)
export BUILD_TYPE=${{ parameters.buildType }}
export BUILD_MACHINE=ubuntu
chmod +x $SOURCE_DIR/generate_package.sh
$SOURCE_DIR/generate_package.sh
displayName: "Run Package Script"
Expand All @@ -126,6 +171,7 @@ stages:
PathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: 'aznfs-temp'

# TODO: add azurelinux later to release and publish stages post approvals
- stage: ReleaseArtifacts
displayName: "Sign and Release Artifacts"
jobs:
Expand Down
50 changes: 46 additions & 4 deletions .github/workflows/prerelease.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ permissions:
contents: write

jobs:
package_mount_helper_amd64:
package_mount_helper_ubuntu_amd64:
name: Package and Release ${{ github.event.inputs.versionName }} for amd64 (Test Release)
runs-on: ubuntu-22.04
steps:
Expand All @@ -54,7 +54,8 @@ jobs:
export RELEASE_NUMBER=${{ github.event.inputs.versionName }}
export STG_DIR=$GITHUB_WORKSPACE/amd64
export SOURCE_DIR=$GITHUB_WORKSPACE/amd64
export BUILD_TYPE=${{ github.events.inputs.buildType }}
export BUILD_TYPE=${{ github.event.inputs.buildType }}
export BUILD_MACHINE=ubuntu
chmod +x $SOURCE_DIR/package.sh
$SOURCE_DIR/package.sh
- name: Create Test Release
Expand All @@ -74,7 +75,48 @@ jobs:
body: |
New Test Release ${{ github.event.inputs.versionName }}

package_mount_helper_arm64:
# NOTE: COMMENT THIS JOB IF AZURE LINUX RUNNER IS NOT CONNECTED
package_mount_helper_azurelinux_amd64:
name: Package and Release ${{ github.event.inputs.versionName }} for azurelinux
runs-on: self-hosted
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
path: azurelinux

- name: Install prerequisites on Azure Linux
run: |
sudo tdnf update -y
sudo tdnf install -y glibc-static rpm-build perl perl-IPC-Cmd \
gcc gcc-c++ make git curl unzip zip tar cmake \
zlib zlib-devel libuuid-devel gnutls gnutls-devel nfs-utils \
libyaml-devel spdlog-devel nlohmann-json-devel cmake make \
pkgconf pkgconf-m4 pkgconf-pkg-config ninja-build binutils \
kernel-headers kernel-devel autoconf automake libtool jemalloc-devel fuse3-devel

- name: Run Package.sh for azurelinux
run: |
export RELEASE_NUMBER=${{ github.event.inputs.versionName }}
export STG_DIR=$GITHUB_WORKSPACE
export SOURCE_DIR=$GITHUB_WORKSPACE/azurelinux
export BUILD_TYPE=${{ github.event.inputs.buildType }}
export BUILD_MACHINE=azurelinux
chmod +x $SOURCE_DIR/package.sh
$SOURCE_DIR/package.sh

- name: Create Release (azurelinux)
uses: softprops/action-gh-release@v1
with:
name: Release ${{ github.event.inputs.versionName }}
tag_name: ${{ github.event.inputs.versionName }}
target_commitish: ${{ github.sha }}
files: |
${{ github.workspace }}/azurelinux/root/rpmbuild/RPMS/x86_64/aznfs-azurelinux-${{ github.event.inputs.versionName }}-1.x86_64.rpm
body: |
New Release ${{ github.event.inputs.versionName }}

package_mount_helper_ubuntu_arm64:
name: Package and Release ${{ github.event.inputs.versionName }} for arm64 (Test Release)
runs-on: ubuntu-22.04-arm
steps:
Expand All @@ -101,7 +143,7 @@ jobs:
export RELEASE_NUMBER=${{ github.event.inputs.versionName }}
export STG_DIR=$GITHUB_WORKSPACE/arm64
export SOURCE_DIR=$GITHUB_WORKSPACE/arm64
export BUILD_TYPE=${{ github.events.inputs.buildType }}
export BUILD_TYPE=${{ github.event.inputs.buildType }}
chmod +x $SOURCE_DIR/package.sh
$SOURCE_DIR/package.sh
- name: Create Test Release
Expand Down
Loading
Loading