<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ewerton Jordão</title>
    <description>The latest articles on DEV Community by Ewerton Jordão (@ewertonjordao).</description>
    <link>https://dev.to/ewertonjordao</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F220545%2F5928a8f0-6ec5-49e9-bd28-32c53dc35a9b.jpg</url>
      <title>DEV Community: Ewerton Jordão</title>
      <link>https://dev.to/ewertonjordao</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ewertonjordao"/>
    <language>en</language>
    <item>
      <title>Dica | Lista de conteúdos gratuitos para aprender Docker e Kubernetes.</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Wed, 26 Jan 2022 03:41:22 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/dica-lista-de-conteudos-gratuitos-para-aprender-docker-e-kubernetes-3bal</link>
      <guid>https://dev.to/ewertonjordao/dica-lista-de-conteudos-gratuitos-para-aprender-docker-e-kubernetes-3bal</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_S3MRcBp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A1zf5z7CYqcMBRnWTgLzFZQ.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_S3MRcBp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A1zf5z7CYqcMBRnWTgLzFZQ.jpeg" alt="" width="800" height="486"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E ae, beleza pessoal? Hoje em dia, ainda é comum que algumas pessoas tenham dificuldades de encontrar conteúdos para iniciar seu aprendizado em Docker e Kubernetes, por isso vou listar algumas opções gratuitas para você começar a se aventurar com essas duas tecnologias.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://docs.microsoft.com/pt-br/learn/paths/intro-to-kubernetes-on-azure/"&gt;Microsoft Learn&lt;/a&gt;, o Microsoft Learn é uma ótima opção para quem quer ter alguns laboratórios com o famoso: mão na massa. Utilizando o sandbox do Azure, você tem a oportunidade de aprender Cloud e somar com alguma outra tecnologia, lembrando que existem diversos cursos, então explore o Microsoft Learn e se divirta aprendendo e desafiando seus amigos e mostrando quem tem mais pontos na plataforma 🥇🥈🥉. &lt;a href="https://azure.microsoft.com/pt-br/resources/kubernetes-ebook-collection/"&gt;Bônus livros gratuitos&lt;/a&gt; 😁.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.katacoda.com/"&gt;Katacoda &lt;/a&gt;, é mantido pela O’Reilly e tem diversos cursos voltados para o mundo open source que são desenvolvidos pela comunidade e você consegue desenvolver os seus cursos e ensinar outras pessoas também.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.solo.io/events-webinars/"&gt;Solo.IO&lt;/a&gt;, Eventos bem divertidos focados em aprendizados mão na massa, a Solo fornece uma plataforma com um roteiro de aprendizagem mostrando o service mesh de forma descomplicada, os instrutores são bem receptivos no evento e fora dele também, porém é preciso observar que geralmente os horários dos eventos são em PST, então pode ser bem cedo no BR ou muito tarde rs... mas vale demais pelo conteúdo.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://kube.academy/paths"&gt;KubeAcademy (VMWare)&lt;/a&gt;, conta com cerca de 30 cursos do nível mais básico ao avançado sobre Cloud Native.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://training.linuxfoundation.org/full-catalog/?_sft_product_type=training"&gt;Linux Foundation&lt;/a&gt;, aqui você encontra vários cursos gratuitos com conteúdo rico sobre Kubernetes, K3S, DevOps, GitOps, Node.js… enfim tem muita coisa sem pagar nada por isso.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://developers.redhat.com/topics/kubernetes"&gt;RedHat Developer&lt;/a&gt;, conta com tutorias interativos no estilo katacoda, além de uma biblioteca onde você pode baixar alguns livros que no mercado custam uma boa graninha, dica extra &lt;a href="https://kubebyexample.com/"&gt;KBE(kube by example)&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://kubernetes.io/docs/tutorials/"&gt;Kubernetes.io&lt;/a&gt;, o website do kubernetes tem alguns tutoriais bem legais, além de contar com toda a documentação oficial da solução. Lembre-se: a documentação é a sua maior aliada em qualquer desafio.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://killercoda.com/"&gt;Killercoda&lt;/a&gt; Semelhante ao Katacoda você tem um ambiente pronto para testar o que precisar e aprender na pratica sobre as certificaçoes CKS,CKA,CKAD, serviço em beta mas é uma ótima maneira de entender mais sobre Kubernetes e tecnologias opensource.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Essas são minhas recomendações iniciais, sabe de alguma outra iniciativa gratuita? compartilha nos comentários pois pode ajudar muita gente.&lt;/p&gt;

&lt;p&gt;Abraço até a próxima 😉&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>azure</category>
      <category>linux</category>
      <category>redhatlinux</category>
    </item>
    <item>
      <title>Realize o Upgrade do seu Azure CLI direto do próprio Azure CLI</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Tue, 20 Oct 2020 16:43:35 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/realize-o-upgrade-do-seu-azure-cli-direto-do-proprio-azure-cli-28el</link>
      <guid>https://dev.to/ewertonjordao/realize-o-upgrade-do-seu-azure-cli-direto-do-proprio-azure-cli-28el</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tLrVaArz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1000/1%2ANikzrv_ZDXUsg2U2SWPftA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tLrVaArz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1000/1%2ANikzrv_ZDXUsg2U2SWPftA.png" alt="" width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E ai pessoal, beleza ? hoje com uma dica bem rápida, nos últimos releases do Azure CLI agora você pode realizar o upgrade sem a necessidade de criar mecanismos para fazer o upgrade, o download manualmente ou utilizar um gerenciador de pacote winget/chocolatey. Desde o release 2.11.0 do Azure CLI temos um novo comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az upgrade 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zSF-FoId--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A9cwlWPNFSZXPWVeJ14eFHg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zSF-FoId--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A9cwlWPNFSZXPWVeJ14eFHg.png" alt="" width="800" height="88"&gt;&lt;/a&gt;Executando o comando.&lt;/p&gt;

&lt;p&gt;Ao executar o comando ele vai solicitar a confirmação ou você pode informar na execução o parâmetro -y e pular o prompt:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7de3ooro--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A4n6fJrE1T7fLUfXEFaFgfA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7de3ooro--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A4n6fJrE1T7fLUfXEFaFgfA.png" alt="" width="800" height="177"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--w9u07TyX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AooFtkJ2Vi1VqaYBHRTQjZQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--w9u07TyX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AooFtkJ2Vi1VqaYBHRTQjZQ.png" alt="" width="800" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Obs: sempre que for feito um upgrade de qualquer ferramenta pode ser que algum dos seus scripts produzidos até aqui parem de funcionar, leia o release notes e não tenha surpresas ao executar algum script ou comando.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Depois seguimos com o processo de aceitar os termos de uso:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SIEjamh7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1018/1%2AJhmXx3YS0VNrGGyu7EBTgA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SIEjamh7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1018/1%2AJhmXx3YS0VNrGGyu7EBTgA.png" alt="" width="800" height="504"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após alguns minutos seu Azure CLI estará atualizado.&lt;/p&gt;

&lt;p&gt;É isso pessoal, se curtiu o conteúdo compartilhe com os seus colegas, deixe sua 👏👏, ajuda demais o blog 😃 . Abraço até a próxima.&lt;/p&gt;

</description>
      <category>azcli</category>
      <category>azure</category>
      <category>commandline</category>
    </item>
    <item>
      <title>GitHub Actions |How to remove all Failed Actions | PWSH ⚡ + GitHub API</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Tue, 13 Oct 2020 23:41:37 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/github-actions-how-to-remove-all-failed-actions-pwsh-github-api-3ahm</link>
      <guid>https://dev.to/ewertonjordao/github-actions-how-to-remove-all-failed-actions-pwsh-github-api-3ahm</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1000%2F1%2A0x-T6XNmsyb-i5EwqTwHCg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1000%2F1%2A0x-T6XNmsyb-i5EwqTwHCg.png" width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hello everyone, thank you very much for accessing this content, if you are here, you also use GitHub Actions and, of course, when you write an action sometimes that action fails, the action history grows and you need to remove it one by one of that history, it’s a boring task and you need to do it. What could facilitate this task? Okay, come on, we can make this task easier with PWSH7.&lt;/p&gt;

&lt;p&gt;I wrote some Actions to automate tasks on my raspberry , my raspberry now it’s my &lt;a href="https://docs.github.com/en/free-pro-team@latest/actions/hosting-your-own-runners" rel="noopener noreferrer"&gt;Self Hosted Runner&lt;/a&gt;, In GitHub Actions you be able to use runners on plataform MacOS,Windows,Linux or Self Hosted in this particular mode, you need to management everything about admin tasks.&lt;/p&gt;

&lt;p&gt;Before you need to have some things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a token on GitHub for connect on RestAPI (if you won’t provide this token you can’t interact with your GitHub Actions)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/PowerShell/PowerShell/releases/tag/v7.0.3" rel="noopener noreferrer"&gt;PowerShell 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.powershellgallery.com/packages/Microsoft.PowerShell.SecretManagement/0.5.3-preview4" rel="noopener noreferrer"&gt;Secrests Managment&lt;/a&gt;(not mandatory but it’s cool to know)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Steps for create a token:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Al9gh4v7pK-HU6x8cfUx0Rw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Al9gh4v7pK-HU6x8cfUx0Rw.png" alt="Click on your Avatar and select Settings" width="800" height="337"&gt;&lt;/a&gt;Click on your Avatar and select Settings&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AcfgfShoVttz5V4iBVxeGGg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AcfgfShoVttz5V4iBVxeGGg.png" alt="When open you profile ,select Developer Settings." width="800" height="337"&gt;&lt;/a&gt;When open you profile ,select &lt;em&gt;Developer Settings&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A-0iaNeN9oZAVR9E4554Xmw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A-0iaNeN9oZAVR9E4554Xmw.png" alt="Personal access tokens  after click on Generate new token" width="800" height="337"&gt;&lt;/a&gt;Click on &lt;strong&gt;Personal access tokens&lt;/strong&gt; after click on &lt;strong&gt;Generate new token&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZ1BB35Pt0gUg-15AwMGIEQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZ1BB35Pt0gUg-15AwMGIEQ.png" alt="Flag those options" width="800" height="337"&gt;&lt;/a&gt;Flag those options&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Aa73qcpsmDqIChhb4axeuyA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Aa73qcpsmDqIChhb4axeuyA.png" alt="And apply these configurations" width="800" height="337"&gt;&lt;/a&gt;And apply these configurations&lt;/p&gt;

&lt;p&gt;Now I show you the code 😃:It’s very simple after you had your personal access token, you need to know wich repository you want to make cleanup and that’s it 😃:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AwwKjogNEyfoOjq5qE52qFA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AwwKjogNEyfoOjq5qE52qFA.png" alt="All workflows" width="800" height="325"&gt;&lt;/a&gt;All workflows&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F740%2F1%2AIWVz2uul9PPJlJTO7EJunw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F740%2F1%2AIWVz2uul9PPJlJTO7EJunw.png" alt="After run script remove jobs with failure status" width="740" height="81"&gt;&lt;/a&gt;After run script remove jobs with failure status&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AhHoPe4qrj3yld6WSquBRAQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AhHoPe4qrj3yld6WSquBRAQ.png" alt="cleanup is done" width="800" height="337"&gt;&lt;/a&gt;cleanup is done&lt;/p&gt;

&lt;p&gt;PowerShell Script:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;That’s it. I really wish you appreciate this content, if you liked that content share with all. See you at next opportunity.&lt;/p&gt;

</description>
      <category>powershell</category>
      <category>github</category>
      <category>automation</category>
      <category>git</category>
    </item>
    <item>
      <title>Az.Tools.Installer | Contribuindo para uma experiência descomplicada com o Módulo Az.</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Thu, 24 Sep 2020 08:02:38 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/az-tools-installer-contribuindo-para-uma-experiencia-descomplicada-com-o-modulo-az-fjl</link>
      <guid>https://dev.to/ewertonjordao/az-tools-installer-contribuindo-para-uma-experiencia-descomplicada-com-o-modulo-az-fjl</guid>
      <description>&lt;h3&gt;
  
  
  Az.Tools.Installer | Contribuindo para uma experiência descomplicada com o Módulo Az.
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Qv9IuvIi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1000/1%2AtRtvuIAsnmUfRyMHk-2N4A.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Qv9IuvIi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1000/1%2AtRtvuIAsnmUfRyMHk-2N4A.jpeg" alt="" width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E ai pessoal, tudo bem? Novidade para quem curte PowerShell, se você gerencia recursos no Azure, com toda certeza você já utilizou o &lt;strong&gt;Az CLI&lt;/strong&gt; e o &lt;strong&gt;PowerShell&lt;/strong&gt; para administrar e provisionar recursos na nuvem, algo bem comum era ver na documentação do modulo &lt;strong&gt;Az&lt;/strong&gt; algum cmdlet e querer utilizá-lo imediatamente, porém em alguns casos o módulo que você tinha na máquina estava desatualizado e então, você resolve seguir com um novo &lt;strong&gt;Install-Module -Name Az -AllowClober /Update-Module -name Az&lt;/strong&gt; e era bem comum ter por exemplo o módulo Az.Account duplicado por não conseguir resolver essa dependência de imediato e muita gente perdia boas horas para remover e resolver essa questão, agora temos a solução na &lt;strong&gt;PSGallery&lt;/strong&gt; o módulo &lt;strong&gt;Az.Tools.Installer&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5AfOhu5K--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AoggrDQnalvVvu1ch6RbGxQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5AfOhu5K--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AoggrDQnalvVvu1ch6RbGxQ.png" alt="" width="800" height="338"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;Install-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Az.Tools.Installer&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O que esse módulo te oferece? basicamente temos 3 funções &lt;strong&gt;Install-AzModule,Uninstall-AzModule,Update-AzModule&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;get-help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Install-AzModule&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;NAME&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nx"&gt;Install-AzModule&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;SYNOPSIS&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nx"&gt;Installs&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Azure&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;PowerShell&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;modules.&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;SYNTAX&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nx"&gt;Install-AzModule&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-MaximumVersion&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-MinimumVersion&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-RequiredVersion&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Repository&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;String&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-RemovePrevious&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-RemoveAzureRm&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-SkipPublisherCheck&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-WhatIf&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-Confirm&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;CommonParameters&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;

    &lt;/span&gt;&lt;span class="n"&gt;Install-AzModule&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Repository&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;String&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-RemovePrevious&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-RemoveAzureRm&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-AllowPrerelease&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-SkipPublisherCheck&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;        
    &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-WhatIf&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;-Confirm&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;CommonParameters&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Update-AzModule&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-RemovePrevious&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;#realiza o update de todos os modulos&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Update-AzModule&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Compute&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;NetWork&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-RemovePrevious&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--glsZ_Yh0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AJqbynJb9Hcel9rwHvfMUKg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--glsZ_Yh0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AJqbynJb9Hcel9rwHvfMUKg.png" alt="" width="800" height="338"&gt;&lt;/a&gt;Versão disponível na PSGallery para o Modulo Az 4.7.0&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XmGW5-Ip--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A-CGbmQMXJdDdET05NCoPNw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XmGW5-Ip--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2A-CGbmQMXJdDdET05NCoPNw.png" alt="" width="800" height="450"&gt;&lt;/a&gt;Versão da minha Instalação do módulo Az 4.1.0&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_PRxc0II--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AY-kx27fRigIGR1ueG_xiSQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_PRxc0II--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AY-kx27fRigIGR1ueG_xiSQ.png" alt="" width="800" height="450"&gt;&lt;/a&gt;Utilizando o parâmetro WhatIF&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EeT8XXqD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AzTpOh0mLfOHYuxRIFsbk7Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EeT8XXqD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AzTpOh0mLfOHYuxRIFsbk7Q.png" alt="" width="800" height="450"&gt;&lt;/a&gt;Realizando o update&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5aVb5Ljg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AfFYC7zKmdqmzUUQW6iHbsw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5aVb5Ljg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2AfFYC7zKmdqmzUUQW6iHbsw.png" alt="" width="800" height="450"&gt;&lt;/a&gt;Visualizando o progresso da instalação&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jHCO_6gj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2Am_GW_ePdsuRZLNITgwCfSw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jHCO_6gj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/1024/1%2Am_GW_ePdsuRZLNITgwCfSw.png" alt="" width="800" height="450"&gt;&lt;/a&gt;Resultado do Update, última versão de todos os submódulos do modulo Az concluída.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Verifique sempre se o update contém alguma alteração que inviabilize a utilização de scripts que estão em produção antes de realizar o update.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Se por ventura você ainda estiver utilizando o Windows PowerShell e não o &lt;a href="https://github.com/PowerShell/PowerShell"&gt;PowerShell 7&lt;/a&gt; recomendo fortemente que comece a utilizá-lo e aproveite todas as novidades que estão por vir com o .Net5.&lt;/p&gt;

&lt;p&gt;É isso pessoal, se curtiu o conteúdo compartilhe com os seus colegas, deixe um ❤ e ou 🦄, ajuda demais o blog 😃 . Não se esqueça PWSH7 é vida.&lt;/p&gt;

</description>
      <category>powershell7</category>
      <category>ptbr</category>
      <category>az</category>
      <category>azure</category>
    </item>
    <item>
      <title>Azure Durable Functions | PowerShell 7 | Chaining Pattern</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Fri, 04 Sep 2020 23:12:56 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/azure-durable-functions-powershell-7-chaining-pattern-57g8</link>
      <guid>https://dev.to/ewertonjordao/azure-durable-functions-powershell-7-chaining-pattern-57g8</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Au0J3O2VTqBF0qb7STjIv_Q.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Au0J3O2VTqBF0qb7STjIv_Q.jpeg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This article is part of &lt;a href="https://aka.ms/ServerlessSeptember2020" rel="noopener noreferrer"&gt;#ServerlessSeptember&lt;/a&gt;. You'll find other helpful articles, detailed tutorials, and videos in this all-things-Serverless content collection. New articles from community members and cloud advocates are published every week from Monday to Thursday through September. &lt;/p&gt;

&lt;p&gt;Find out more about how Microsoft Azure enables your Serverless functions at &lt;a href="https://docs.microsoft.com/azure/azure-functions/?WT.mc_id=servsept20-devto-cxaall" rel="noopener noreferrer"&gt;https://docs.microsoft.com/azure/azure-functions/&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Hi everyone, nice to see you here 😁. I’ll try to write in English again, for me, it’s so hard because in my country we talk in Portuguese, I’m from Brazil, and if my English is so poor please don’t go away from this content 😂.&lt;br&gt;&lt;br&gt;
Ok Here we go, I’m trying to explore Durable Functions with PowerShell 7, after I saw this &lt;a href="https://azure.microsoft.com/pt-br/updates/powershell-support-in-durable-functions-is-in-public-preview/" rel="noopener noreferrer"&gt;post &lt;/a&gt;, yes now we can use PowerShell With Durable Functions in this post we focus in Chain Pattern, what is chaining pattern? Chaining Pattern in a simple way, are some steps to complete something, is possible to build a flow with functions, for example, you can trigger some function and result is an input for another function, this flow is drop-down. In this example, you can see this in action.&lt;br&gt;&lt;br&gt;
Let’s go?&lt;/p&gt;

&lt;p&gt;Ok I tried to make some sketch of how this works.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ah1fM0XEFT0SFSmCUosfveQ.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ah1fM0XEFT0SFSmCUosfveQ.jpeg"&gt;&lt;/a&gt;In this picture we have a sample how chaining patter works, first we can call http request, listner httpstart call orchestrator and they had a workflow inside code, in this picture we had three activities to do.&lt;/p&gt;

&lt;p&gt;Sample code here and other instructions:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/EwertonJordao/AzDurableFunction_pwshchainningpatter" rel="noopener noreferrer"&gt;EwertonJordao/AzDurableFunction_pwshchainningpatter&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ok, now I’ll implement my code on Azure, you can use your VSCode for do this or use CLI.&lt;/p&gt;

&lt;p&gt;CLI option:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AXfN7wNKFPfJYemRaXkHTbQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AXfN7wNKFPfJYemRaXkHTbQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A28MneY9nS16-tFvXgqhNJA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A28MneY9nS16-tFvXgqhNJA.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AjQ9GOI1Zz4rXQLUghAgwAQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AjQ9GOI1Zz4rXQLUghAgwAQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;GUI option:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AIniiIFT-h7aPRE_ZbvGqmg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AIniiIFT-h7aPRE_ZbvGqmg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AHpkxzHTVyM6ytH7MKfDn5g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AHpkxzHTVyM6ytH7MKfDn5g.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AogSCe8jrmMgL1S5t_u0xXQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AogSCe8jrmMgL1S5t_u0xXQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Result:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2An9AXJMLMtrMmMnDlLnJAtw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2An9AXJMLMtrMmMnDlLnJAtw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Finaly, in this sample I tried to show how you can use Chainig Patter for do Adm Tasks on Azure, see you in next opportunity. If you like this post please “clap” share with others and star my repository on github =D. Thank you.&lt;/p&gt;

</description>
      <category>powershell</category>
      <category>durablefunctions</category>
      <category>serverless</category>
      <category>azure</category>
    </item>
    <item>
      <title>Utilizando Azure Functions (PowerShell Core) KafkaTrigger</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Sun, 31 May 2020 00:43:27 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/utilizando-azure-functions-powershell-core-kafkatrigger-1gd</link>
      <guid>https://dev.to/ewertonjordao/utilizando-azure-functions-powershell-core-kafkatrigger-1gd</guid>
      <description>&lt;p&gt;E ae, pessoal, beleza? Falei recentemente na live do dia 25/05 de como utilizar a trigger Kafka do Azure Functions com o PowerShell Core(na data deste artigo a nova Trigger está em preview),é uma implementação bem simples em questão de código dentro da function, toda a implementação core para consumir a mensagem é implementada por debaixo dos panos. Utilizando o PowerShell recebemos um objeto KafkaEvent e você pode trabalhar com os dados da mensagem. Anúncio do Preview Kafka trigger &lt;a href="https://techcommunity.microsoft.com/t5/azure-functions/announcing-preview-of-the-azure-functions-kafka-extension/ba-p/1342348"&gt;blog post&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Requisitos
&lt;/h3&gt;

&lt;p&gt;Azure functions core tools.&lt;br&gt;
Conta no Azure.&lt;br&gt;
Conta no Confluente Cloud. &lt;/p&gt;

&lt;p&gt;Neste fork inclui a implementação com os exemplos para PowerShell. &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--A9-wwsHG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/EwertonJordao"&gt;
        EwertonJordao
      &lt;/a&gt; / &lt;a href="https://github.com/EwertonJordao/azure-functions-kafka-extension"&gt;
        azure-functions-kafka-extension
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Kafka extension for Azure Functions
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
Azure Functions extensions for Apache Kafka&lt;/h1&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Branch&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;master&lt;/td&gt;
&lt;td&gt;&lt;a href="https://azfunc.visualstudio.com/Azure%20Functions/_build/latest?definitionId=7&amp;amp;branchName=master" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/928022d1655db4111ac13e885dc8267270e163ada5d3ac75ed34ec6b2ce9ffa3/68747470733a2f2f617a66756e632e76697375616c73747564696f2e636f6d2f417a75726525323046756e6374696f6e732f5f617069732f6275696c642f7374617475732f617a7572652d66756e6374696f6e732d6b61666b612d657874656e73696f6e2d63693f6272616e63684e616d653d6d6173746572" alt="Build Status"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;dev&lt;/td&gt;
&lt;td&gt;&lt;a href="https://azfunc.visualstudio.com/Azure%20Functions/_build/latest?definitionId=7&amp;amp;branchName=dev" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/9950160fbcb7007e58e0f2d6f7a8690411c85da48f264b6f5e408da79df5d970/68747470733a2f2f617a66756e632e76697375616c73747564696f2e636f6d2f417a75726525323046756e6374696f6e732f5f617069732f6275696c642f7374617475732f617a7572652d66756e6374696f6e732d6b61666b612d657874656e73696f6e2d63693f6272616e63684e616d653d646576" alt="Build Status"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;This repository contains Kafka binding extensions for the &lt;strong&gt;Azure WebJobs SDK&lt;/strong&gt;. The extension status is in beta. The communication with Kafka is based on library &lt;strong&gt;Confluent.Kafka&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Please find samples &lt;a href="https://github.com/Azure/azure-functions-kafka-extension/tree/master/samples"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;DISCLAIMER&lt;/strong&gt;: This library is supported in the Premium Plan along with support for scaling. It is fully supported when using Azure Functions on Kubernetes where scaling will be handed by KEDA - scaling based on Kafka queue length. It is currently not supported on the Consumption plan (there will be no scale from zero).&lt;/p&gt;
&lt;h2&gt;
Bindings&lt;/h2&gt;
&lt;p&gt;There are two binding types in this repo: trigger and output. To get started using the extension in a WebJob project add reference to Microsoft.Azure.WebJobs.Extensions.Kafka project and call &lt;code&gt;AddKafka()&lt;/code&gt; on the startup:&lt;/p&gt;
&lt;div class="highlight highlight-source-cs notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;&lt;span class="pl-k"&gt;&lt;span class="pl-k"&gt;static&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-k"&gt;async&lt;/span&gt; Task &lt;span class="pl-en"&gt;Main&lt;/span&gt;&lt;span class="pl-kos"&gt;(&lt;/span&gt;&lt;span class="pl-smi"&gt;string&lt;/span&gt;&lt;span class="pl-kos"&gt;[&lt;/span&gt;&lt;span class="pl-kos"&gt;]&lt;/span&gt; &lt;span class="pl-s1"&gt;args&lt;/span&gt;&lt;span class="pl-kos"&gt;)&lt;/span&gt;
&lt;span class="pl-kos"&gt;{&lt;/span&gt;
  &lt;span class="pl-smi"&gt;var&lt;/span&gt; &lt;span class="pl-s1"&gt;builder&lt;/span&gt; &lt;span class="pl-c1"&gt;=&lt;/span&gt; &lt;span class="pl-k"&gt;new&lt;/span&gt; HostBuilder&lt;span class="pl-kos"&gt;(&lt;/span&gt;&lt;span class="pl-kos"&gt;)&lt;/span&gt;
        &lt;span class="pl-kos"&gt;.&lt;/span&gt;&lt;span class="pl-en"&gt;UseEnvironment&lt;/span&gt;&lt;/pre&gt;…
&lt;/div&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/EwertonJordao/azure-functions-kafka-extension"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Live dia 25/05.&lt;/strong&gt;&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/D_bofQRtpgE"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>azure</category>
      <category>powershel</category>
      <category>kafka</category>
      <category>ptbr</category>
    </item>
    <item>
      <title>WinGet o gerenciador de pacotes Windows 10</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Thu, 21 May 2020 20:16:59 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/winget-o-gerenciador-de-pacotes-windows-10-4m3l</link>
      <guid>https://dev.to/ewertonjordao/winget-o-gerenciador-de-pacotes-windows-10-4m3l</guid>
      <description>&lt;h1&gt;
  
  
  Como instalar e utilizar o WinGet Preview
&lt;/h1&gt;

&lt;p&gt;E ae, pessoal, beleza? Novidade do Microsoft Build 2020, foi anunciado o gerenciador de pacotes do Windows 10 o winget, você provavelmente já deve ter ouvido falar de algumas iniciativas para gerenciamento de pacotes como o scoop,chocolatey, estamos falando de gerenciamento de pacotes de instalação &lt;strong&gt;.exe, .msi,.msix&lt;/strong&gt;. Gerenciar pacotes no Windows sem um gerenciador de pacotes é algo extremamente trabalhoso, entramos no site do fabricante realizamos o download do produto e depois vamos aos wizards de instalação que na maioria dos casos é NNF (next,next,finish),o gerenciador de pacotes de forma declarativa resolve isso para você. &lt;/p&gt;

&lt;h3&gt;
  
  
  Requisitos
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Windows 10 1709 (build 16299) ou superior (No seu terminal digitando winver você consegue verificar essa informação).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Instalação
&lt;/h3&gt;

&lt;p&gt;Para a instalação é bem simples, vou realizar o download do pacote com o último release no repositório do &lt;a href="https://github.com/microsoft/winget-cli"&gt;winget-cli&lt;/a&gt; e seguir a instalação conforme abaixo:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8ciTBlEg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/o7l46pejkqvjsbewybkm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8ciTBlEg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/o7l46pejkqvjsbewybkm.png" alt="Alt Text" width="800" height="420"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VuL3dNv6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/mhtx3n7g7o8juvwcdu0d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VuL3dNv6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/mhtx3n7g7o8juvwcdu0d.png" alt="Alt Text" width="800" height="384"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BAry7MP---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/xuequuw4d1nyvcxylp9t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BAry7MP---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/xuequuw4d1nyvcxylp9t.png" alt="Alt Text" width="800" height="420"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rHoucmHC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/31dfjq6dkjhaee6cawat.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rHoucmHC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/31dfjq6dkjhaee6cawat.png" alt="Alt Text" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--186lSgyy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/45ke2c6gw6hzr25wncg2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--186lSgyy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/45ke2c6gw6hzr25wncg2.png" alt="Alt Text" width="800" height="420"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;winget show &amp;lt;pacote&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse comando basicamente exibe detalhes do pacote, descrição, quem fez a publicação, versão, etc...&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mdukU7oy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/xn31g7houe3893v6518n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mdukU7oy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/xn31g7houe3893v6518n.png" alt="Alt Text" width="800" height="400"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;winget search --name &amp;lt;pacote&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Realiza a pesquisa do pacote, aqui vale ressaltar que você pode utilizar direto o winget search , porém ele não vai fazer distinção de qual atributo a pesquisa deve ser feita, você pode estar fazendo referência ao ID,Nome do pacote, Tags, ou seja quanto mais específico melhor o resultado de saída.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xkgRtOL7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/t9upj67hmx9jw6u3tjgo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xkgRtOL7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/t9upj67hmx9jw6u3tjgo.png" alt="Alt Text" width="800" height="366"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;winget isntall --name &amp;lt;pacote&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SvXvz3uU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/3wt2jyicg2qkw0ssjwig.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SvXvz3uU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/3wt2jyicg2qkw0ssjwig.png" alt="Alt Text" width="800" height="401"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--p4eXSLvY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/nv3baex3hfpb91q4l35d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--p4eXSLvY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/nv3baex3hfpb91q4l35d.png" alt="Alt Text" width="800" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E para quem deseja contribuir com a criação de pacotes segue abaixo um exemplo do manifesto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;Id&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;denoland.deno&lt;/span&gt;
&lt;span class="na"&gt;Version&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;0.0.1&lt;/span&gt;   
&lt;span class="na"&gt;Name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;deno&lt;/span&gt;       
&lt;span class="na"&gt;Publisher&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Ewerton Jordão&lt;/span&gt;
&lt;span class="na"&gt;License&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;MIT&lt;/span&gt;
&lt;span class="na"&gt;LicenseUrl&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;https://github.com/denoland/deno/blob/master/LICENSE&lt;/span&gt;
&lt;span class="na"&gt;AppMoniker&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;denoland&lt;/span&gt;
&lt;span class="na"&gt;Tags&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;deno,denoland&lt;/span&gt;
&lt;span class="na"&gt;Description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.&lt;/span&gt;
            &lt;span class="s"&gt;Secure by default. No file, network, or environment access, unless explicitly enabled.&lt;/span&gt;
            &lt;span class="s"&gt;Supports TypeScript out of the box.Ships only a single executable file.&lt;/span&gt; 
            &lt;span class="s"&gt;Has built-in utilities like a dependency inspector (deno info) and a code formatter (deno fmt).&lt;/span&gt;
            &lt;span class="s"&gt;Has a set of reviewed (audited) standard modules that are guaranteed to work with Deno deno.land/std&lt;/span&gt;
&lt;span class="na"&gt;Homepage&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;https://deno.land/&lt;/span&gt;
&lt;span class="na"&gt;Installers&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;Arch&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;x86&lt;/span&gt;
    &lt;span class="na"&gt;Url&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;https://github.com/denoland/deno/releases/download/v1.0.1/deno-x86_64-pc-windows-msvc.zip&lt;/span&gt;
    &lt;span class="na"&gt;Sha256&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;E68E8F15BF81D9F9AAC318F2D6F058AD4FB74ED471196E4CDAA2FF2C4CCA9741&lt;/span&gt;
    &lt;span class="na"&gt;InstallerType&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;exe&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Obs: esse manifesto tem caráter explicativo, note inclusive que na URL eu informei um donwload de arquivo.zip, não vou realizar o pull request deste manifesto para o &lt;a href="https://github.com/microsoft/winget-pkgs"&gt;winget-pkgs&lt;/a&gt;, no próprio repositório do winget-pkgs você vai encontrar um script PowerShell para te ajudar a definir os seus próprios manifestos e realizar o pull request e contribuir com a comunidade. &lt;/p&gt;

&lt;p&gt;Validação do manifesto com o comando abaixo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;winget validate &amp;lt;manifesto.yml&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ev417NvR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/ltqxgnuhhxmyajyacjyt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ev417NvR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/ltqxgnuhhxmyajyacjyt.png" alt="Alt Text" width="800" height="43"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;É isso pessoal, muito bacana ver um projeto desse totalmente open source e com um futuro incrível por vir. Não se esqueça, winget é vida 😎💻&lt;/p&gt;

</description>
      <category>winget</category>
      <category>packagemanagment</category>
      <category>windows10</category>
    </item>
    <item>
      <title>Extensão Remote - SSH| VSCode | CentOS</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Sun, 17 May 2020 02:19:33 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/extensao-remote-ssh-vscode-centos-4b2h</link>
      <guid>https://dev.to/ewertonjordao/extensao-remote-ssh-vscode-centos-4b2h</guid>
      <description>&lt;h1&gt;
  
  
  Como desenvolver remotamente com o Visual Studio Code.
&lt;/h1&gt;

&lt;p&gt;E ae, pessoal, beleza? Vou abordar neste artigo sobre uma extensão muito bacana o &lt;a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack"&gt;Remote Development&lt;/a&gt; para Visual Studio code com o foco principal na produtividade de qualquer desenvolvedor, essa extensão agrega outras extensões: Remote - WSL, Remote - Containers, Remote - SSH, porém vou focar em especial na Remote - SSH. Imagino que assim como eu, você tenha um ambiente de desenvolvimento heterogêneo, ou seja muitas vezes você está desenvolvendo para mais de uma plataforma seja ela, Windows, Linux ou MacOS.&lt;/p&gt;

&lt;p&gt;Com o Remote - SSH você tem a comodidade de desenvolver direto do seu dispositivo sem a necessidade de ficar movendo arquivos de um lado para o outro e o melhor dentro de um editor de código que você já está acostumado. Conseguimos especificar quais as extensões eu quero que estejam prontas para desenvolver no meu servidor remotamente, sem a necessidade de instalar localmente para trabalhar em um determinado projeto.&lt;/p&gt;

&lt;p&gt;Bom, bora lá ver isso na prática?&lt;/p&gt;

&lt;h1&gt;
  
  
  Requisitos para utilizar o Remote - SSH
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Instalar a extensão no Visual Studio Code.&lt;/li&gt;
&lt;li&gt;Ter um client SSH instalado.&lt;a href="https://code.visualstudio.com/docs/remote/troubleshooting#_installing-a-supported-ssh-client"&gt;clients suportados&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;No servidor devemos ter o SSH Server previamente instalado para conseguir realizar a conexão via client.

&lt;ul&gt;
&lt;li&gt;Aqui no blog tenho um artigo de como realizar a instalação e configuração do OpenSSH no CentOS e Raspbian, se você não tem instalado confere lá.&lt;a href="https://dev.to/ewertonjordao/openssh-powershell-core-windows-to-centos-windows-to-raspbian-2kif"&gt;artigo&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Com a instalação da extensão concluída, como eu havia comentado conseguimos especificar quais extensões eu quero que existam na minha sessão remota, no arquivo settings.json (&lt;strong&gt;ctrl+,&lt;/strong&gt;).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"remote.SSH.defaultExtensions"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"ms-vscode.powershell"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"ms-vscode.vscode-node-azure-pack"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"ms-python.python"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"eamodio.gitlens"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"remote.extensionKind"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"eamodio.gitlens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"workspace"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"ms-vscode.vscode-node-azure-pack"&lt;/span&gt;&lt;span class="p"&gt;:[&lt;/span&gt;&lt;span class="s2"&gt;"workspace"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"ms-vscode.powershell"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"workspace"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"ms-python.python"&lt;/span&gt;&lt;span class="p"&gt;:[&lt;/span&gt;&lt;span class="s2"&gt;"workspace"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando definimos o remote.extensionKind, indicamos onde a extensão está instalada, o valor "workspace" indica que a instalação da extensão será no servidor. O outro tipo possível é "UI" onde a extensão está instalada no client , muito útil quando vamos depurar uma aplicação web. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lBKioczV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/0cyvn3jgo16yb629qln0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lBKioczV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/0cyvn3jgo16yb629qln0.png" alt="Instalação das extensões no servidor remoto" width="800" height="261"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Conseguimos definir configurações específicas para o servidor, no meu caso eu tenho mais familiaridade com o PowerShell do que com o Bash, desta forma eu posso alterar qual o terminal padrão da minha sessão (shell default), através do settings.json específico do servidor. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TwyMx-nf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/wj92q14nm6i02ogie9sf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TwyMx-nf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/wj92q14nm6i02ogie9sf.png" alt="Alt Text" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ea2iNNHV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/l4upl79owvq8sf2xlnrn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ea2iNNHV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/l4upl79owvq8sf2xlnrn.png" alt="Alt Text" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zi94Pp_S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/x84ndb905l7zbvpxr2bd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zi94Pp_S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/x84ndb905l7zbvpxr2bd.png" alt="Alt Text" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--k_kCnLgm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/x13w5msyb97vqkbh7mdl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--k_kCnLgm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/x13w5msyb97vqkbh7mdl.png" alt="Alt Text" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"terminal.integrated.shell.linux"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/usr/bin/pwsh"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Obs: É importante que você já tenha previamente instalado o PowerShell para alterar o shell integrado do Visual Studio Code. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zr1EZ6dv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/9hqrdseqo61z8pp31hzj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zr1EZ6dv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/9hqrdseqo61z8pp31hzj.png" alt="Mostrando o intelicense para PowerShell no Remote - SSH" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bzBPwMF6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/7b9jn4hx01sguqaoyulz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bzBPwMF6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/7b9jn4hx01sguqaoyulz.png" alt="" width="800" height="389"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aXv-lAHg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/3uunymg7xpb8b91zwfic.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aXv-lAHg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/3uunymg7xpb8b91zwfic.png" alt="Alt Text" width="800" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Uma dica bacana é gerar a chave de autenticação para que você não tenha que ficar trocando senhas toda hora para estabelecer sua conexão SSH.&lt;/p&gt;

&lt;p&gt;É isso pessoal, espero que tenha gostado da dica de hoje, vimos como é simples ter uma nova experiência de desenvolvimento sem sair do conforto da sua máquina habitual. Forte abraço e não se esqueça, &lt;strong&gt;PS é Vida&lt;/strong&gt; ✌😎. &lt;/p&gt;

</description>
      <category>powershell</category>
      <category>centos</category>
      <category>remotedev</category>
    </item>
    <item>
      <title>Consumindo a dll do Selenium WebDriver | Powershell 7</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Thu, 07 May 2020 03:16:21 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/consumindo-a-dll-do-selenium-webdriver-powershell-7-j79</link>
      <guid>https://dev.to/ewertonjordao/consumindo-a-dll-do-selenium-webdriver-powershell-7-j79</guid>
      <description>&lt;h1&gt;
  
  
  Como utilizar uma dll .Net no PowerShell.
&lt;/h1&gt;

&lt;p&gt;E ai, pessoal, beleza? Trazendo um assunto bem legal que é misturar um framework de automação &lt;strong&gt;(PowerShell 7)&lt;/strong&gt; e uma ferramenta &lt;strong&gt;*&lt;/strong&gt; que utilizaríamos para QA(Quality Assurance) &lt;strong&gt;*Selenium WebDriver&lt;/strong&gt; .&lt;/p&gt;

&lt;p&gt;Se por acaso você não sabe o PowerShell foi reescrito em .Net Core, na data que escrevo este texto estamos na versão 3.1 e consequentemente o PowerShell vem evoluindo em conjunto com o .Net, atualmente estamos na versão 7.0(Pwsh), por ser escrito em .Net eu consigo importar as dlls que eu utilizaria em uma aplicação C# no PowerShell, instanciar objetos, interagir com as propriedades e os seu métodos.&lt;/p&gt;

&lt;p&gt;Nesta demonstração utilizo o site do &lt;a href="https://devshow.com.br/sobre-nos/"&gt;DevShow podcast&lt;/a&gt; para fazer o webscrap(extrair dados de uma página web) neste caso para pegar a uri para os downloads dos episódios disponíveis. Para você que não conhece, neste podcast falamos de inúmeros assuntos de tecnologia, fica a dica para nos acompanhar 😉 no seu agregador de podcast favorito ou utilizando o código que vou disponibilizar🐱‍💻🧠 e realizar o download dos episódios que quiser, vamos lá?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Requisitos

&lt;ul&gt;
&lt;li&gt;Download do pacote nuget do Selenium(no nosso caso vou utilizar a versão Alpha05 para utilizar em conjunto do Edge Chromium base, a versão Alpha em especial é para utilizar o modo furtivo a.k.a headless 😂😂😂 ).&lt;/li&gt;
&lt;li&gt;Download WebDriver compatível com a versão do seu navegador.&lt;/li&gt;
&lt;li&gt;Incluir o diretório do WebDriver nas variáveis de ambiente (Você pode incluir o diretório do WebDriver no construtor do EdgeDriver assim como eu faço nessa demonstração, porem você pode tranquilamente incluir o path nas variáveis de ambiente).&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Estrutura de pastas
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;PastadoScript

&lt;ul&gt;
&lt;li&gt;script.ps1&lt;/li&gt;
&lt;li&gt;wishlist.txt&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;selenium.webdriver.X.X.X

&lt;ul&gt;
&lt;li&gt;lib

&lt;ul&gt;
&lt;li&gt;netstandard2.0

&lt;ul&gt;
&lt;li&gt;WebDriver.dll&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;WebDriver

&lt;ul&gt;
&lt;li&gt;webdriver.exe&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Código fonte
&lt;/h3&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;h3&gt;
  
  
  Resultado
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OQZ_d7_x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/6j94zq1jtr9417qluahr.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OQZ_d7_x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/6j94zq1jtr9417qluahr.gif" alt="Gif mostrando a execução do código e enfatizando o modo headless no msedge Chromium" width="800" height="201"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bHi9FvMk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/i1939p41wxbwcq5fsy0k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bHi9FvMk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/i1939p41wxbwcq5fsy0k.png" alt="Imagem com o resultado dos 3 downloads no file explorer, três arquivos com tamanhos distintos vindos do site do podcast" width="694" height="136"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;É isso pessoal, vimos como é simples utilizar uma dll e dar novos poderes a nossa sessão no PWSH, com pouco menos de 50 linhas de código implementamos uma solução pratica em linha de comando 😉, espero que tenham curtido o assunto, forte abraço. &lt;strong&gt;E não se esqueça, PWSH7 é vida ❤.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Referência
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://docs.microsoft.com/en-us/microsoft-edge/webdriver-chromium#download-a-webdriver-language-binding"&gt;Documentação Edge(Chromium)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.selenium.dev/selenium/docs/api/dotnet/"&gt;Documentação Selenium .Net&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.selenium.dev/documentation/en/"&gt;Exemplos Selenium&lt;/a&gt;&lt;/p&gt;

</description>
      <category>powershell</category>
      <category>selenium</category>
      <category>automation</category>
    </item>
    <item>
      <title>Como importar (muitos) módulos no Azure Automation | Linha de Comando| pt-br</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Sat, 01 Feb 2020 03:40:14 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/como-importar-muitos-modulos-no-azure-automation-linha-de-comando-pt-br-13hi</link>
      <guid>https://dev.to/ewertonjordao/como-importar-muitos-modulos-no-azure-automation-linha-de-comando-pt-br-13hi</guid>
      <description>&lt;h1&gt;
  
  
  Como importar módulos locais no seu serviço de automação por linha de comando.
&lt;/h1&gt;

&lt;p&gt;E ae, pessoal, beleza? Trazendo uma dica bem legal para quem utiliza o serviço de automação disponível no Azure o Azure Automation. O processo de importação via interface gráfica é intuitiva e ajuda bastante quando não temos muita intimidade com linha de comando, mas se torna um tanto repetitivo se você precisa buscar vários módulos e realizar a importação. &lt;/p&gt;

&lt;p&gt;Geralmente, quando estamos desenvolvendo alguma automação, realizamos testes locais. E, muitas vezes, utilizamos módulos para nos auxiliar nessas tarefas. Se por algum motivo você tiver inúmeros módulos, como você coloca essa lista na sua conta de automação? vou demonstrar como executar o processo no script abaixo:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Eq72Pb2W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/lq4q2gz3305thh1b0pld.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Eq72Pb2W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/lq4q2gz3305thh1b0pld.png" alt="Criando os Jobs no Azure utilizando conexão criada no terminal do Visual Studio Code. Connect-AzAccount " width="800" height="497"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iGEUPRzc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/hkqzhmc1bofc1ho711tg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iGEUPRzc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/hkqzhmc1bofc1ho711tg.png" alt="Visualização dos jobs de importação dos módulos no portal do Azure com status de importando" width="800" height="329"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2TKC5bpp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/w59mttd3065hrg2ffhsg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2TKC5bpp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/w59mttd3065hrg2ffhsg.png" alt="Visualização dos jobs de importação dos módulos no portal do Azure com status de disponível a partir deste momento podemos utilizar os módulos nos scripts" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após todos os módulos finalizarem a importação podemos utiliza-los em nosso runbooks PowerShell, sem nenhum problema de falhar por falta de alguma referencia. &lt;/p&gt;

&lt;p&gt;É isso pessoal. Não se esqueça, PWSH + Azure Automation é vida 😍.&lt;/p&gt;

</description>
      <category>azure</category>
      <category>devops</category>
      <category>automation</category>
      <category>powershell</category>
    </item>
    <item>
      <title>How to import (many) modules into Azure Automation | Command Line | en-us</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Sat, 01 Feb 2020 03:39:20 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/how-to-import-many-modules-into-azure-automation-command-line-en-us-42ih</link>
      <guid>https://dev.to/ewertonjordao/how-to-import-many-modules-into-azure-automation-command-line-en-us-42ih</guid>
      <description>&lt;h1&gt;
  
  
  How to import local modules into your automation service by command line.
&lt;/h1&gt;

&lt;p&gt;Hy everyone, how are u? Bringing a cool tip for those who use the automation service available in Azure (Azure Automation). The import process via the graphical interface is intuitive and helps a lot when there is not much intimacy with the command line, but it becomes somewhat repetitive if you need to search for various modules and perform an import.&lt;/p&gt;

&lt;p&gt;Sometimes, when we are developing some automation, we carry out local tests. And, often, it uses modules to help the tasks. If for some reason you have module numbers, how do you put that list in your automation account? I will demonstrate how to execute the process in the script below:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;⚠ When do you use the first script you can receive an error because the import-module on Azure Automation has a limited number of jobs simultaneously.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Eq72Pb2W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/lq4q2gz3305thh1b0pld.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Eq72Pb2W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/lq4q2gz3305thh1b0pld.png" alt="Creating Jobs in Azure using a connection created in the Visual Studio Code terminal. Connect-AzAccount" width="800" height="497"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iGEUPRzc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/hkqzhmc1bofc1ho711tg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iGEUPRzc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/hkqzhmc1bofc1ho711tg.png" alt="Visualization of module import jobs in the Azure portal with import status" width="800" height="329"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2TKC5bpp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/w59mttd3065hrg2ffhsg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2TKC5bpp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/w59mttd3065hrg2ffhsg.png" alt="Visualization of the module import jobs in the Azure portal with the status of available from this moment we can use the modules in the scripts" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After all modules are finished importing, we can use them in our PowerShell runbooks, without any problem of failing due to lack of any reference.&lt;/p&gt;

&lt;p&gt;That's it, folks. Don't forget, PWSH + Azure Automation is life&lt;/p&gt;

</description>
      <category>azure</category>
      <category>devops</category>
      <category>automation</category>
      <category>powershell</category>
    </item>
    <item>
      <title>Azure Cloud Shell ☁🐚 | Windows Terminal | Visual Studio Code</title>
      <dc:creator>Ewerton Jordão</dc:creator>
      <pubDate>Mon, 04 Nov 2019 23:22:58 +0000</pubDate>
      <link>https://dev.to/ewertonjordao/azure-cloud-shell-windows-terminal-visual-studio-code-4a36</link>
      <guid>https://dev.to/ewertonjordao/azure-cloud-shell-windows-terminal-visual-studio-code-4a36</guid>
      <description>&lt;h1&gt;
  
  
  Interagindo de outras formas com o Azure Cloud Shell.
&lt;/h1&gt;

&lt;p&gt;E ae, pessoal, beleza? Trazendo algumas formas de interagir com o Azure Cloud Shell, neste artigo vou conectar no cloud shell com o Windows Terminal e com o Visual Studio Code, afinal posso usar minha máquina Linux(Sim o Cloud Shell é um Ubuntu por debaixo dos panos)para testar alguma aplicação, executar testes de disponibilidade de serviços, administrar serviços, criar novos serviços, enfim, o que sua imaginação permitir.&lt;/p&gt;

&lt;h2&gt;
  
  
  Azure Cloud Shell e Windows Terminal
&lt;/h2&gt;

&lt;p&gt;O Windows Terminal está disponível na Microsoft Store, oferece suporte a GPU, ou seja, consegue interpretar emojis, etc... Te dá possibilidade de conectar em aplicações de linha de comando ou shells (Command Prompt, PowerShell, Cmder) isso com o intuito de ganhar produtividade. Para os amantes da linha de comando assim como eu, é uma ótima solução. 😁&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Obs: O Windows Terminal está em preview e para utilizá-lo é necessário ter o Windows 10 na versão 1903.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cmU4-gJt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/u8yaipu0zwwxmx67r2wh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cmU4-gJt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/u8yaipu0zwwxmx67r2wh.png" alt="Atalho ctrl+shift+6 para acessar o Cloud Shell através do Windows Terminal" width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EsrztBSo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/xhj0nttb7nquglryxvuf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EsrztBSo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/xhj0nttb7nquglryxvuf.png" alt="Alt Text" width="800" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pSpEQdgJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/aimbc5j8gtn8duqn152v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pSpEQdgJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/aimbc5j8gtn8duqn152v.png" alt="Alt Text" width="800" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--X6Baj5Ve--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/dyhyu190fbv44vpc63i0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--X6Baj5Ve--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/dyhyu190fbv44vpc63i0.png" alt="Alt Text" width="800" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Azure Cloud Shell e Visual Studio Code
&lt;/h2&gt;

&lt;p&gt;No Visual Studio é bem simples utilizar o Azure Cloud Shell, se você já utiliza a extensão Azure Account, você já está habilitado a utilizar no Visual Studio code, se não, é bem fácil instalar.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Selecione o menu de Extensões na barra lateral esquerda ou &lt;strong&gt;(ctrl+shift+x)&lt;/strong&gt;. &lt;/li&gt;
&lt;li&gt;Pesquise por Azure Account. &lt;/li&gt;
&lt;li&gt;Clique em instalar.&lt;/li&gt;
&lt;li&gt;Após a instalação é necessário se autenticar no Azure &lt;strong&gt;(ctrl+shift+p)&lt;/strong&gt; digite &lt;strong&gt;Azure: Sign In&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Para iniciar o console vamos utilizar o mesmo atalho &lt;strong&gt;(ctrl+shift+p)&lt;/strong&gt; porém vamos executar outro comando, temos duas opções para interagir no Cloud Shell Bash ou PowerShell, &lt;strong&gt;Azure: Open Bash in Cloud Shell&lt;/strong&gt; ou &lt;strong&gt;Azure: Open PowerShell in Cloud Shell&lt;/strong&gt;. &lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;Vou escolher PowerShell, mas se você tem mais intimidade com o Bash fique a vontade para escolher a que lhe agrada mais, no caso do Bash para interagir com os recursos do Azure será através do &lt;strong&gt;Az Cli&lt;/strong&gt;, já com o PowerShell posso utilizar o Módulo Az ou o Az Cli.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--x2K29J62--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/xl3nimc2bg5bbtkjx1sj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--x2K29J62--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/xl3nimc2bg5bbtkjx1sj.png" alt="Acessando o azure cloud shell via Visual Studio Code e teste do Azure Cli" width="800" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uXY1jPLQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/9p0a9m1hv8ekz9oxvjhe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uXY1jPLQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/9p0a9m1hv8ekz9oxvjhe.png" alt="Acessando o azure cloud shell via Visual Studio Code e teste com o Modulo Az do PowerShell" width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;É isso pessoal, demonstrei duas formas de interagir com seus recursos no Azure, são passos bem simples para interagir com linha de comando através do Cloud Shell, que no dia a dia fazem total diferença na produtividade, seja de um Administrador ou Desenvolvedor. &lt;/p&gt;

</description>
      <category>azure</category>
      <category>windowsterminal</category>
      <category>azurecloudshell</category>
    </item>
  </channel>
</rss>
