<?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>Forem: Luis Vilca</title>
    <description>The latest articles on Forem by Luis Vilca (@ferluisxd).</description>
    <link>https://forem.com/ferluisxd</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%2F362514%2F8aac87dc-031d-4661-9f85-734099886baa.jpeg</url>
      <title>Forem: Luis Vilca</title>
      <link>https://forem.com/ferluisxd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/ferluisxd"/>
    <language>en</language>
    <item>
      <title>.npmrc generator with Github Actions</title>
      <dc:creator>Luis Vilca</dc:creator>
      <pubDate>Sat, 15 Aug 2020 01:18:27 +0000</pubDate>
      <link>https://forem.com/ferluisxd/npmrc-generator-with-github-actions-43kn</link>
      <guid>https://forem.com/ferluisxd/npmrc-generator-with-github-actions-43kn</guid>
      <description>&lt;p&gt;Hello this is my submission for the Github Actions hackaton!&lt;br&gt;
I actually developed this for my organization but it is really useful for installing private npm modules (in this case hosted on github)&lt;br&gt;

You gotta pass these inputs:&lt;br&gt;
org_name&lt;br&gt;
Organization name (Github repository name)&lt;/p&gt;

&lt;p&gt;auth_token&lt;br&gt;
AuthToken that is able to download files from the repository, can also be passed as env and it's rather recommended this way&lt;/p&gt;

&lt;p&gt;And you use it like in the example on below&lt;/p&gt;
&lt;h3&gt;
  
  
  My Workflow
&lt;/h3&gt;


&lt;div class="highlight"&gt;&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;core&lt;/span&gt;

&lt;span class="na"&gt;on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="s"&gt;pull_request&lt;/span&gt;

&lt;span class="na"&gt;jobs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;continous-integration&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;runs-on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;ubuntu-latest&lt;/span&gt;

    &lt;span class="na"&gt;strategy&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;matrix&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="na"&gt;node-version&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;12.x&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;

    &lt;span class="na"&gt;steps&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;uses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;actions/checkout@v2&lt;/span&gt;
      &lt;span class="pi"&gt;-&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;Use Node.js ${{ matrix.node-version }}&lt;/span&gt;
        &lt;span class="na"&gt;uses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;actions/setup-node@v1&lt;/span&gt;
        &lt;span class="na"&gt;with&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;node-version&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;${{ matrix.node-version }}&lt;/span&gt;
      &lt;span class="pi"&gt;-&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;Create a .npmrc file for the github private repository&lt;/span&gt;
        &lt;span class="na"&gt;uses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;FerLuisxd/create-npmrc@3&lt;/span&gt;
        &lt;span class="na"&gt;with&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;org_name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;lig0&lt;/span&gt;  
        &lt;span class="na"&gt;env&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;AUTH_TOKEN&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;${{ secrets.OGIL_PALOMA_SECRET }}&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;npm install&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;npm run lint&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;npm test&lt;/span&gt;
        &lt;span class="na"&gt;env&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;CI&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="no"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Submission Category:
&lt;/h3&gt;

&lt;p&gt;DIY Deployments&lt;/p&gt;
&lt;h3&gt;
  
  
  Yaml File or Link to Code
&lt;/h3&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--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/FerLuisxd"&gt;
        FerLuisxd
      &lt;/a&gt; / &lt;a href="https://github.com/FerLuisxd/create-npmrc"&gt;
        create-npmrc
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Github workflow action to create .npmrc file for github to the root folder
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
Create a .npmrc file for the github repository&lt;/h1&gt;
&lt;p&gt;Github workflow action to create .npmrc file for github to the root folder&lt;/p&gt;
&lt;p&gt;Pass all sensitive data using secrets.&lt;/p&gt;
&lt;h2&gt;
Inputs&lt;/h2&gt;
&lt;h3&gt;
&lt;code&gt;org_name&lt;/code&gt;
&lt;/h3&gt;
&lt;p&gt;Organization name (Github repository name)&lt;/p&gt;
&lt;h3&gt;
&lt;code&gt;auth_token&lt;/code&gt;
&lt;/h3&gt;
&lt;p&gt;AuthToken that is able to download files from the repository, can also be passed as env and it's rather recommended this way&lt;/p&gt;
&lt;h2&gt;
Example usage&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;uses: ferluisxd/create-npmrc@3
with:
  org_name: lig0
  auth_token: 31352d11daasdf769942919dsafas594a5d
  env:
    AUTH_TOKEN: ${{ secrets.github_auth_token }}
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;
Example output&lt;/h2&gt;
&lt;div class="highlight highlight-source-ini-npmrc"&gt;&lt;pre&gt;&lt;span class="pl-v"&gt;registry&lt;/span&gt; &lt;span class="pl-k"&gt;=&lt;/span&gt; &lt;span class="pl-corl"&gt;https://npm.pkg.github.com/lig0&lt;/span&gt;
&lt;span class="pl-v"&gt;//npm.pkg.github.com/:_authToken&lt;/span&gt;&lt;span class="pl-k"&gt;=&lt;/span&gt;&lt;span class="pl-c1"&gt;31352&lt;/span&gt;d&lt;span class="pl-c1"&gt;11&lt;/span&gt;daasdf&lt;span class="pl-c1"&gt;769942919&lt;/span&gt;dsafas&lt;span class="pl-c1"&gt;594&lt;/span&gt;a&lt;span class="pl-c1"&gt;5&lt;/span&gt;d&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/FerLuisxd/create-npmrc"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;🎉 Congratulations, you have successfully automated your private module installs! 🎊&lt;/p&gt;

&lt;h3&gt;
  
  
  Additional Resources / Info
&lt;/h3&gt;

&lt;p&gt;If you need to know more about installing private modules click (here)[&lt;a href="https://docs.github.com/pt/packages/using-github-packages-with-your-projects-ecosystem/configuring-npm-for-use-with-github-packages"&gt;https://docs.github.com/pt/packages/using-github-packages-with-your-projects-ecosystem/configuring-npm-for-use-with-github-packages&lt;/a&gt;]&lt;/p&gt;

</description>
      <category>actionshackathon</category>
      <category>github</category>
      <category>npm</category>
      <category>node</category>
    </item>
  </channel>
</rss>
