Carregar módulos PowerShell personalizados nas funções do Azure envolve algumas etapas. Veja como você pode fazer isso:
Usando a pasta Módulos
1. Crie uma pasta de módulos: na raiz do seu aplicativo de função do Azure, crie uma pasta chamada módulos. Isso pode ser feito usando o App Service Editor no portal do Azure.
2. Carregue os módulos personalizados: Coloque seus arquivos de módulo personalizado (por exemplo, `.psm1` e` .psd1`) dentro desta pasta Módulos. Você pode fazer upload desses arquivos usando o App Service Editor ou por FTP.
3. Reinicie o aplicativo de função: Após o upload dos módulos, reinicie o aplicativo da função do Azure para garantir que os módulos sejam carregados e disponíveis para uso.
4. Módulos de importação em seu script: você não precisa importar explicitamente módulos em seu script PowerShell se eles estiverem na pasta Módulos, pois as funções do Azure adicionam automaticamente essa pasta à `$ Env: Psmodulepath`. No entanto, se você precisar importar um módulo explicitamente por qualquer motivo, poderá usar o cmdlet `import-module`.
Usando o console kudu
Como alternativa, você pode usar o console Kudu para fazer upload de módulos:
1. Acesse o console KUDU: Vá para o seu aplicativo de função do Azure no portal do Azure e navegue até Ferramentas Avançadas (KUDU).
2. Módulos de upload: No console Kudu, navegue até o diretório do site/wwwroot do seu aplicativo de função. Crie uma pasta de bin, se necessário, e faça o upload de seus arquivos de módulo personalizado lá.
3. Módulos de importação em seu script: Como os módulos não estão em um caminho padrão, você precisa importá-los explicitamente usando o cmdlet `import-module` com o caminho completo para o arquivo` .psd1` do módulo.
Considerações importantes
- Caminho do módulo: verifique se os módulos são colocados em um local incluído no `$ env: psmodulepath` ou importá -los explicitamente.
- Reiniciar: Depois de adicionar ou atualizar módulos, reinicie seu aplicativo de função para aplicar alterações.
- Compatibilidade da versão: verifique se seus módulos personalizados são compatíveis com a versão PowerShell usada pelas funções do Azure.
Seguindo estas etapas, você pode carregar e usar com sucesso os módulos PowerShell personalizados em seus scripts de funções do Azure.
Citações:
[1] https://jeffbrown.tech/azure-functions-powershell-module/
[2] https://blog.tyang.org/2016/10/07/using-custom-powershell-modules-in-azure-functions/
[3] https://4bes.nl/2021/07/11/add-custom-modules-to-azure-functions-formo-powershell/
[4] https://stackoverflow.com/questions/72916606/custom-powershell-module-dails-to-import-in-azure-funion
[5] https://learn.microsoft.com/en-us/azure/azure-functions/functions-reference-powershell
[6] https://devblogs.microsoft.com/powershell/using-powershell-modules-in-azure-functions/
[7] https://tech.nicolonsky.ch/azure-functions-powershell-modules/
[8] https://pnp.github.io/powershell/articles/azurefunctions.html