Skip to content
Open
Changes from all commits
Commits
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
66 changes: 24 additions & 42 deletions .github/remove_packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ pr:
- none

stages:
- stage: RemoveAllPackage
- stage: RemoveSpecificPackageVersion
jobs:
- job: RemovePackage
- job: RemoveVersion
timeoutInMinutes: 120

pool:
Expand All @@ -47,6 +47,7 @@ stages:
- task: PipAuthenticate@1
inputs:
artifactFeeds: 'One/aznfs'

- script: pip install pmc-cli
displayName: 'Install pmc-cli'

Expand All @@ -58,49 +59,30 @@ stages:
scriptLocation: inlineScript
inlineScript: |

# Define the package name
PACKAGE_NAME="aznfs"

echo "package list ...... deb:"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" package deb list --name "$PACKAGE_NAME"

for id in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" package deb list --name "$PACKAGE_NAME" | jq -r '.results[].id'); do

echo "Package ID: $id"
# Define the package name and target version
PACKAGE_NAME="aznfs"
TARGET_VERSION="${{ parameters.versionName }}"

# Remove the package from all repositories
for repo in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo list --package "$id" | jq -r '.results[].name'); do
echo "Removing package from repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo package update --remove-packages "$id" "$repo"
echo "Looking for .deb packages with version: $TARGET_VERSION"

echo "Republishing repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo publish "$repo"
done
for id in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" package deb list --name "$PACKAGE_NAME" | jq -r --arg ver "$TARGET_VERSION" '.results[] | select(.version == $ver) | .id'); do
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All looks good. Just make sure this pmc command works as expected with version filtering.

echo "Found .deb package ID: $id (version $TARGET_VERSION)"
for repo in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo list --package "$id" | jq -r '.results[].name'); do
echo "Removing .deb package from repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo package update --remove-packages "$id" "$repo"
echo "Republishing repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo publish "$repo"
done
done

echo "package list ...... rpm:"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" package rpm list --name "$PACKAGE_NAME"


for id in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" package rpm list --name "$PACKAGE_NAME" | jq -r '.results[].id'); do

echo "Package ID: $id"

# Remove the package from all repositories
for repo in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo list --package "$id" | jq -r '.results[].name'); do
echo "Removing package from repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo package update --remove-packages "$id" "$repo"
echo "Looking for .rpm packages with version: $TARGET_VERSION"

echo "Republishing repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo publish "$repo"
done
for id in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" package rpm list --name "$PACKAGE_NAME" | jq -r --arg ver "$TARGET_VERSION" '.results[] | select(.version == $ver) | .id'); do
echo "Found .rpm package ID: $id (version $TARGET_VERSION)"
for repo in $(pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo list --package "$id" | jq -r '.results[].name'); do
echo "Removing .rpm package from repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo package update --remove-packages "$id" "$repo"
echo "Republishing repo: $repo"
pmc --base-url "https://pmc-ingest.trafficmanager.net/api/v4" repo publish "$repo"
done









done