at 24.11-pre 9.3 kB view raw
1{ lib 2, stdenv 3, python3 4, fetchPypi 5, fetchpatch 6, src 7, version 8}: 9 10let 11 buildAzureCliPackage = with py.pkgs; buildPythonPackage; 12 13 overrideAzureMgmtPackage = package: version: extension: hash: 14 package.overridePythonAttrs (oldAttrs: { 15 inherit version; 16 17 src = fetchPypi { 18 inherit (oldAttrs) pname; 19 inherit version hash extension; 20 }; 21 }); 22 23 py = python3.override { 24 packageOverrides = self: super: { 25 inherit buildAzureCliPackage; 26 27 # core and the actual application are highly coupled 28 azure-cli-core = buildAzureCliPackage { 29 pname = "azure-cli-core"; 30 inherit version src; 31 32 sourceRoot = "${src.name}/src/azure-cli-core"; 33 34 patches = [ 35 # Adding the possibility to configure an immutable configuration dir via `AZURE_IMMUTABLE_DIR`. 36 # This enables us to place configuration files that alter the behavior of the CLI in the Nix store. 37 # 38 # This is a downstream patch without an commit or PR upstream. 39 # There is an issue to discuss possible solutions upstream: 40 # https://github.com/Azure/azure-cli/issues/28093 41 ./0001-optional-immutable-configuration-dir.patch 42 ]; 43 44 propagatedBuildInputs = with self; [ 45 argcomplete 46 azure-cli-telemetry 47 azure-common 48 azure-mgmt-core 49 cryptography 50 distro 51 humanfriendly 52 jmespath 53 knack 54 msal-extensions 55 msal 56 msrestazure 57 packaging 58 paramiko 59 pkginfo 60 psutil 61 pyjwt 62 pyopenssl 63 requests 64 ]; 65 66 nativeCheckInputs = with self; [ pytest ]; 67 68 doCheck = stdenv.isLinux; 69 70 # ignore tests that does network call, or assume powershell 71 checkPhase = '' 72 python -c 'import azure.common; print(azure.common)' 73 74 PYTHONPATH=$PWD:${src}/src/azure-cli-testsdk:$PYTHONPATH HOME=$TMPDIR pytest \ 75 azure/cli/core/tests \ 76 --ignore=azure/cli/core/tests/test_profile.py \ 77 --ignore=azure/cli/core/tests/test_generic_update.py \ 78 --ignore=azure/cli/core/tests/test_cloud.py \ 79 --ignore=azure/cli/core/tests/test_extension.py \ 80 -k 'not metadata_url and not test_send_raw_requests and not test_format_styled_text_legacy_powershell' 81 ''; 82 83 pythonImportsCheck = [ 84 "azure.cli.telemetry" 85 "azure.cli.core" 86 ]; 87 }; 88 89 azure-cli-telemetry = buildAzureCliPackage { 90 pname = "azure-cli-telemetry"; 91 version = "1.1.0"; 92 inherit src; 93 94 sourceRoot = "${src.name}/src/azure-cli-telemetry"; 95 96 propagatedBuildInputs = with self; [ 97 applicationinsights 98 portalocker 99 ]; 100 101 nativeCheckInputs = with self; [ pytest ]; 102 # ignore flaky test 103 checkPhase = '' 104 cd azure 105 HOME=$TMPDIR pytest -k 'not test_create_telemetry_note_file_from_scratch' 106 ''; 107 }; 108 109 azure-keyvault-keys = overrideAzureMgmtPackage super.azure-keyvault-keys "4.9.0b3" "tar.gz" "sha256-qoseyf6WqBEG8vPc1hF17K46AWk8Ba8V9KRed4lOlGo="; 110 azure-mgmt-applicationinsights = overrideAzureMgmtPackage super.azure-mgmt-applicationinsights "1.0.0" "zip" "sha256-woeix9703hn5LAwxugKGf6xvW433G129qxkoi7RV/Fs="; 111 azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "17.3.0" "tar.gz" "sha256-/JSIGmrNuKlTPzcbb3stPq6heJ65VQFLJKkI1t/nWZE="; 112 azure-mgmt-batchai = overrideAzureMgmtPackage super.azure-mgmt-batchai "7.0.0b1" "zip" "sha256-mT6vvjWbq0RWQidugR229E8JeVEiobPD3XA/nDM3I6Y="; 113 azure-mgmt-botservice = overrideAzureMgmtPackage super.azure-mgmt-botservice "2.0.0b3" "zip" "sha256-XZGQOeMw8usyQ1tl8j57fZ3uqLshomHY9jO/rbpQOvM="; 114 azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "12.0.0" "zip" "sha256-t8PuIYkjS0r1Gs4pJJJ8X9cz8950imQtbVBABnyMnd0="; 115 azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "30.6.0" "tar.gz" "sha256-TYDXI+xtTLlYNhfr7AcW59dLJzKsuu0CPtLjzHBT0A4="; 116 azure-mgmt-core = overrideAzureMgmtPackage super.azure-mgmt-core "1.3.2" "zip" "sha256-B/Sv6COlXXBLBI1h7f3BMYwFHtWfJEAyEmNQvpXp1QE="; 117 azure-mgmt-datalake-store = overrideAzureMgmtPackage super.azure-mgmt-datalake-store "0.5.0" "zip" "sha256-k3bTVJVmHRn4rMVgT2ewvFlJOxg1u8SA+aGVL5ABekw="; 118 azure-mgmt-devtestlabs = overrideAzureMgmtPackage super.azure-mgmt-devtestlabs "4.0.0" "zip" "sha256-WVScTEBo8mRmsQl7V0qOUJn7LNbIvgoAOVsG07KeJ40="; 119 azure-mgmt-dns = overrideAzureMgmtPackage super.azure-mgmt-dns "8.0.0" "zip" "sha256-QHwtrLM1E/++nKS+Wt216dS64Mt++mE8P31THve/jeg="; 120 azure-mgmt-eventgrid = overrideAzureMgmtPackage super.azure-mgmt-eventgrid "10.2.0b2" "zip" "sha256-QcHY1wCwQyVOEdUi06/wEa4dqJH5Ccd33gJ1Sju0qZA="; 121 azure-mgmt-eventhub = overrideAzureMgmtPackage super.azure-mgmt-eventhub "10.1.0" "zip" "sha256-MZqhSBkwypvEefhoEWEPsBUFidWYD7qAX6edcBDDSSA="; 122 azure-mgmt-extendedlocation = overrideAzureMgmtPackage super.azure-mgmt-extendedlocation "1.0.0b2" "zip" "sha256-mjfH35T81JQ97jVgElWmZ8P5MwXVxZQv/QJKNLS3T8A="; 123 azure-mgmt-iotcentral = overrideAzureMgmtPackage super.azure-mgmt-iotcentral "10.0.0b1" "zip" "sha256-1CiZuTXYhIb74eGQZUJHHzovYNnnVd3Ydu1UCy2Bu00="; 124 azure-mgmt-kusto = (overrideAzureMgmtPackage super.azure-mgmt-kusto "0.3.0" "zip" 125 "sha256-nri3eB/UQQ7p4gfNDDmDuvnlhBS1tKGISdCYVuNrrN4=").overridePythonAttrs (attrs: { 126 propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ self.msrest self.msrestazure ]; 127 }); 128 azure-mgmt-maps = overrideAzureMgmtPackage super.azure-mgmt-maps "2.0.0" "zip" "sha256-OE4X92potwCk+YhHiUXDqXIXEcBAByWv38tjz4ToXw4="; 129 azure-mgmt-media = overrideAzureMgmtPackage super.azure-mgmt-media "9.0.0" "zip" "sha256-TI7l8sSQ2QUgPqiE3Cu/F67Wna+KHbQS3fuIjOb95ZM="; 130 azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "5.0.0" "zip" "sha256-eL9KJowxTF7hZJQQQCNJZ7l+rKPFM8wP5vEigt3ZFGE="; 131 azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "10.1.0" "zip" "sha256-eJiWTOCk2C79Jotku9bKlu3vU6H8004hWrX+h76MjQM="; 132 azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "1.1.0b4" "zip" "sha256-aB16xyrhNYHJeitvdCeV+kik21B2LC+5/OSDQIGwTpI="; 133 azure-mgmt-privatedns = overrideAzureMgmtPackage super.azure-mgmt-privatedns "1.0.0" "zip" "sha256-tg8W5D97KRWCxfV7rhsIMJbYMD6dmVjiwpInpVzCfEU="; 134 azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "10.2.0b14" "tar.gz" "sha256-hfgSrWZKUJNU9CeAyETCrKWKxmCyk9kId8RYSNsKwBM="; 135 azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "9.1.0" "tar.gz" "sha256-Hp/UBsDJ7iYn9aNx8BL4dzQvf8bzOyVk/NFNbwZjzQ8="; 136 azure-mgmt-redis = overrideAzureMgmtPackage super.azure-mgmt-redis "14.3.0" "tar.gz" "sha256-eoMbY4oNzYXkn3uFUhxecJQD+BxYkGTbWhAWSgAoLyA="; 137 azure-mgmt-resource = overrideAzureMgmtPackage super.azure-mgmt-resource "23.1.0b2" "zip" "sha256-kMmiKVwjPgmsTIxxxDRNXE41jSTJkemnKhO+P/OcPZI="; 138 azure-mgmt-search = overrideAzureMgmtPackage super.azure-mgmt-search "9.0.0" "zip" "sha256-Gc+qoTa1EE4/YmJvUSqVG+zZ50wfohvWOe/fLJ/vgb0="; 139 azure-mgmt-security = overrideAzureMgmtPackage super.azure-mgmt-security "5.0.0" "zip" "sha256-OLA+/oLCNEzqID/alebQC3rCJ4L6HAtYXNDqLI/z5wI="; 140 azure-mgmt-servicefabric = (overrideAzureMgmtPackage super.azure-mgmt-servicefabric "1.0.0" "zip" 141 "sha256-3jXhF5EoMsGp6TEJqNJMq5T1VwOpCHsuscWwZVs7GRM=").overridePythonAttrs (attrs: { 142 propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ self.msrest self.msrestazure ]; 143 }); 144 azure-mgmt-servicelinker = overrideAzureMgmtPackage super.azure-mgmt-servicelinker "1.2.0b2" "tar.gz" "sha256-PpEFMM8ri9OgAa79dGhvPKy5YFfDZZustBUDieQrtZU="; 145 azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "2.0.0b1" "tar.gz" "sha256-oK2ceBEoQ7gAeG6mye+x8HPzQU9bUNRPVJtRW2GL4xg="; 146 azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "4.0.0b16" "tar.gz" "sha256-+6QKEROlbXe0oCj4qtB+r4/yCPZD4N+71e5Z1Z/zXV0="; 147 azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "1.0.0b5" "zip" "sha256-ZFgJflgynRSxo+B+Vso4eX1JheWlDQjfJ9QmupXypMc="; 148 azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "21.1.0" "tar.gz" "sha256-1tPA6RfJiLye0Eckd9PvP5CIYAnrHZenEZRPg3VjAWI="; 149 azure-mgmt-synapse = overrideAzureMgmtPackage super.azure-mgmt-synapse "2.1.0b5" "zip" "sha256-5E6Yf1GgNyNVjd+SeFDbhDxnOA6fOAG6oojxtCP4m+k="; 150 azure-mgmt-trafficmanager = overrideAzureMgmtPackage super.azure-mgmt-trafficmanager "1.0.0" "zip" "sha256-R0F2HoA0bE7dTLPycTaOqYBj+ATQFeJFwv4EjtK1lqg="; 151 152 azure-storage-common = overrideAzureMgmtPackage super.azure-storage-common "1.4.2" "tar.gz" "sha256-Tsh8dTfUV+yVJS4ORkd+LBzPM3dP/v0F2FRGgssK5AE="; 153 azure-synapse-accesscontrol = overrideAzureMgmtPackage super.azure-synapse-accesscontrol "0.5.0" "zip" "sha256-g14ySiByqPgkJGRH8EnIRJO9Q6H2usS5FOeMCQiUuwQ="; 154 azure-synapse-spark = overrideAzureMgmtPackage super.azure-synapse-spark "0.2.0" "zip" "sha256-OQ5brhweEIrtN2iP4I5NacdC9t3YUiGIVhhqSs3FMuI="; 155 }; 156 }; 157in 158py