Release in Ubuntu 24.04 and Mariner 2.0 (#1393)

This commit is contained in:
Sourav Gupta 2024-05-02 11:29:19 +05:30 коммит произвёл GitHub
Родитель 644728f209
Коммит 796fd71a9d
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
2 изменённых файлов: 142 добавлений и 2 удалений

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

@ -136,7 +136,7 @@ stages:
displayName: 'Make deb Package'
- script: |
fpm -s dir -t rpm -n blobfuse2 -C pkgDir/ -v `./pkgDir/usr/bin/blobfuse2 --version | cut -d " " -f 3` -d $(depends) \
fpm -s dir -t rpm -n blobfuse2 --rpm-digest sha256 -C pkgDir/ -v `./pkgDir/usr/bin/blobfuse2 --version | cut -d " " -f 3` -d $(depends) \
--maintainer "Blobfuse v-Team <blobfusevteam@microsoft.com>" --url "https://github.com/Azure/azure-storage-fuse" \
--description "An user-space filesystem for interacting with Azure Storage"
mv ./blobfuse2*.rpm ./blobfuse2-`./pkgDir/usr/bin/blobfuse2 --version | cut -d " " -f 3`-$(tags).x86_64.rpm
@ -236,7 +236,7 @@ stages:
displayName: 'Make deb Package'
- script: |
fpm -s dir -t rpm -n blobfuse2 -C pkgDir/ -v `./pkgDir/usr/bin/blobfuse2 --version | cut -d " " -f 3` -d $(depends) \
fpm -s dir -t rpm -n blobfuse2 --rpm-digest sha256 -C pkgDir/ -v `./pkgDir/usr/bin/blobfuse2 --version | cut -d " " -f 3` -d $(depends) \
--maintainer "Blobfuse v-Team <blobfusevteam@microsoft.com>" --url "https://github.com/Azure/azure-storage-fuse" \
--description "An user-space filesystem for interacting with Azure Storage"
mv ./blobfuse2*.rpm ./blobfuse2-`./pkgDir/usr/bin/blobfuse2 --version | cut -d " " -f 3`-$(tags).aarch64.rpm
@ -289,6 +289,14 @@ stages:
md5sum $(Build.ArtifactStagingDirectory)/blobfuse2-temp/*.rpm
displayName: 'List Artifacts'
- script: |
mkdir mariner && chmod 755 mariner
cp blobfuse2-temp/*-fuse3*.rpm mariner
sudo ls -lRt mariner
md5sum mariner/*
displayName: 'Copy artifacts for Mariner'
workingDirectory: $(Build.ArtifactStagingDirectory)
- script: |
sudo apt-get update
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
@ -318,11 +326,32 @@ stages:
}
]
- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1
displayName: 'ESRP CodeSigning blobfuse2 mariner'
inputs:
ConnectedServiceName: 'PMC ESRP Blobfuse2 Signing'
FolderPath: '$(Build.ArtifactStagingDirectory)/mariner'
Pattern: '*.rpm'
signConfigType: inlineSignParams
VerboseLogin: true
inlineOperation: |
[
{
"KeyCode" : "$(ESRP_BLOBFUSE_MARINER_KEY_CODE)",
"OperationCode" : "LinuxSign",
"Parameters" : {},
"ToolName" : "sign",
"ToolVersion" : "1.0"
}
]
# Validate signed images have md5sum changed
- script: |
chmod 755 $(Build.ArtifactStagingDirectory)/blobfuse2-temp/*.rpm
chmod 755 $(Build.ArtifactStagingDirectory)/blobfuse2-temp/*.deb
chmod 755 $(Build.ArtifactStagingDirectory)/mariner/*.rpm
rm -rf $(Build.ArtifactStagingDirectory)/blobfuse2-temp/*.md
rm -rf $(Build.ArtifactStagingDirectory)/mariner/*.md
mv $(Build.ArtifactStagingDirectory)/blobfuse2-temp/* $(Build.ArtifactStagingDirectory)/
rm -rf $(Build.ArtifactStagingDirectory)/blobfuse2-temp/
displayName: 'Make Artifacts executable'
@ -331,6 +360,7 @@ stages:
sudo ls -lRt $(Build.ArtifactStagingDirectory)
md5sum $(Build.ArtifactStagingDirectory)/*.deb
md5sum $(Build.ArtifactStagingDirectory)/*.rpm
md5sum $(Build.ArtifactStagingDirectory)/mariner/*
displayName: 'List Signed Artifacts'
# Push signed images to artifact directory
@ -1236,6 +1266,96 @@ stages:
artifactName: 'blobfuse2'
displayName: 'Publish Artifacts'
- job: Set_8
timeoutInMinutes: 120
strategy:
matrix:
Mariner2:
agentName: "blobfuse-mariner2"
DistroVer: "Mariner2"
Description: "CBL-Mariner2 Linux"
fuselib: 'libfuse3-dev'
fuse-version: 'fuse3'
tags: 'fuse3'
container: "test-cnt-mari-2"
pool:
name: "blobfuse-mariner-pool"
demands:
- ImageOverride -equals $(AgentName)
variables:
- group: NightlyBlobFuse
- name: root_dir
value: '$(System.DefaultWorkingDirectory)'
- name: work_dir
value: '$(System.DefaultWorkingDirectory)/azure-storage-fuse'
- name: mount_dir
value: '$(System.DefaultWorkingDirectory)/fusetmp'
- name: temp_dir
value: '$(System.DefaultWorkingDirectory)/fusetmpcache'
steps:
- checkout: none
- script: |
sudo tdnf update -y
sudo tdnf install git -y
displayName: 'Install Git'
- script: |
git clone https://github.com/Azure/azure-storage-fuse
displayName: 'Checkout Code'
workingDirectory: $(root_dir)
- script: |
git checkout `echo $(Build.SourceBranch) | cut -d "/" -f 1,2 --complement`
displayName: 'Checkout Branch'
workingDirectory: $(root_dir)/azure-storage-fuse
# Custom script to install Go-lang
- task: ShellScript@2
inputs:
scriptPath: "$(work_dir)/go_installer.sh"
args: "$(root_dir)/"
displayName: "GoTool Custom Setup"
# get glibc version with which build is done
- script: |
ldd --version
displayName: "GLIBC Version"
- task: DownloadBuildArtifacts@0
displayName: 'Download Build Artifacts'
inputs:
artifactName: 'blobfuse2-signed'
downloadPath: $(root_dir)
itemPattern: blobfuse2-signed/mariner/blobfuse2*$(tags)*x86_64.rpm
- script: |
ls -l
result=$(ls -1 | wc -l)
if [ $result -ne 1 ]; then
exit 1
fi
displayName: 'List Downloaded Package'
workingDirectory: $(root_dir)/blobfuse2-signed/mariner
- script: |
sudo rpm -qip blobfuse2*.rpm
sudo tdnf install gcc build-essential fuse3 fuse3-devel -y
sudo rpm -i blobfuse2*.rpm
displayName: 'Install Package'
workingDirectory: $(root_dir)/blobfuse2-signed/mariner
- template: 'azure-pipeline-templates/release-distro-tests.yml'
parameters:
root_dir: $(root_dir)
work_dir: $(work_dir)
mount_dir: $(mount_dir)
temp_dir: $(temp_dir)
container: $(container)
# TestArtifacts ends here
- stage: ReleaseArtifacts
dependsOn: TestArtifacts
@ -1360,6 +1480,16 @@ stages:
artifactName: 'blobfuse2-signed'
downloadPath: $(Build.ArtifactStagingDirectory)
- script: |
cd mariner
for f in ./blobfuse2*fuse3*.rpm; do mv -v "$f" "${f/-fuse3./-cm2.}"; done
ls -lRt
mv blobfuse2*.rpm ..
cd ..
rm -r mariner/
displayName: 'Rename Mariner binaries'
workingDirectory: $(Build.ArtifactStagingDirectory)/blobfuse2-signed/
- script: |
sudo ls -lRt $(Build.ArtifactStagingDirectory)
displayName: 'List Artifacts'
@ -1394,6 +1524,12 @@ stages:
fuse2AmdRpm=`pmc --msal-cert-path $(pmcCertificate.secureFilePath) --config $(settings.secureFilePath) --id-only package upload blobfuse2*fuse2.x86_64.rpm`
echo "Fuse2 AMD RPM ID: $fuse2AmdRpm"
marinerFuse3AmdRpm=`pmc --msal-cert-path $(pmcCertificate.secureFilePath) --config $(settings.secureFilePath) --id-only package upload blobfuse2*cm2.x86_64.rpm`
echo "Mariner fuse3 AMD RPM ID: $marinerFuse3AmdRpm"
marinerFuse3AarchRpm=`pmc --msal-cert-path $(pmcCertificate.secureFilePath) --config $(settings.secureFilePath) --id-only package upload blobfuse2*cm2.aarch64.rpm`
echo "Mariner fuse3 ARM RPM ID: $marinerFuse3AarchRpm"
while IFS=, read -r distro fuseArchType repoName releaseName; do
echo "Uploading packages for $distro"
pmc --msal-cert-path $(pmcCertificate.secureFilePath) --config $(settings.secureFilePath) repo package update --add-packages ${!fuseArchType} $repoName $releaseName

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

@ -4,6 +4,8 @@ Ubuntu-18.04,fuse2AmdDeb,microsoft-ubuntu-bionic-prod-apt,bionic
Ubuntu-20.04,fuse3AmdDeb,microsoft-ubuntu-focal-prod-apt,focal
Ubuntu-22.04,fuse3AmdDeb,microsoft-ubuntu-jammy-prod-apt,jammy
Ubuntu-22.04,fuse3ArmDeb,microsoft-ubuntu-jammy-prod-apt,jammy
Ubuntu-24.04,fuse3AmdDeb,microsoft-ubuntu-noble-prod-apt,noble
Ubuntu-24.04,fuse3ArmDeb,microsoft-ubuntu-noble-prod-apt,noble
Debian-9.0,fuse2AmdDeb,microsoft-debian-stretch-prod-apt,stretch
Debian-10.0,fuse2AmdDeb,microsoft-debian-buster-prod-apt,buster
Debian-11.0,fuse3AmdDeb,microsoft-debian-bullseye-prod-apt,bullseye
@ -18,3 +20,5 @@ RHEL-9.0,fuse3ArmRpm,microsoft-rhel9.0-prod-yum,
CentOS-7.0,fuse3AmdRpm,microsoft-centos7-prod-yum,
CentOS-8.0,fuse3AmdRpm,microsoft-centos8-prod-yum,
SUSE-15Gen2,fuse3AmdRpm,microsoft-sles15-prod-yum,
Mariner-2.0-x86_64,marinerFuse3AmdRpm,cbl-mariner-2.0-prod-Microsoft-x86_64-yum,
Mariner-2.0-aarch64,marinerFuse3AarchRpm,cbl-mariner-2.0-prod-Microsoft-aarch64-yum,

1 # Do not remove these comments
4 Ubuntu-20.04,fuse3AmdDeb,microsoft-ubuntu-focal-prod-apt,focal
5 Ubuntu-22.04,fuse3AmdDeb,microsoft-ubuntu-jammy-prod-apt,jammy
6 Ubuntu-22.04,fuse3ArmDeb,microsoft-ubuntu-jammy-prod-apt,jammy
7 Ubuntu-24.04,fuse3AmdDeb,microsoft-ubuntu-noble-prod-apt,noble
8 Ubuntu-24.04,fuse3ArmDeb,microsoft-ubuntu-noble-prod-apt,noble
9 Debian-9.0,fuse2AmdDeb,microsoft-debian-stretch-prod-apt,stretch
10 Debian-10.0,fuse2AmdDeb,microsoft-debian-buster-prod-apt,buster
11 Debian-11.0,fuse3AmdDeb,microsoft-debian-bullseye-prod-apt,bullseye
20 CentOS-7.0,fuse3AmdRpm,microsoft-centos7-prod-yum,
21 CentOS-8.0,fuse3AmdRpm,microsoft-centos8-prod-yum,
22 SUSE-15Gen2,fuse3AmdRpm,microsoft-sles15-prod-yum,
23 Mariner-2.0-x86_64,marinerFuse3AmdRpm,cbl-mariner-2.0-prod-Microsoft-x86_64-yum,
24 Mariner-2.0-aarch64,marinerFuse3AarchRpm,cbl-mariner-2.0-prod-Microsoft-aarch64-yum,