Loading

Github + Microsoft

Sajeetharan Sinnathurai

This is a live streamed presentation. You will automatically follow the presenter and see the slide they're currently on.

 @kokkisajee

www.sajeetharan.com

Github and the OpenSource Enterprise

In a nutshell

Communities

Social Developer

Recognitions

Cloud Solution Architect @Microsoft

First GDE and MVP from SL

Top reputed Stackoverflow user

 

I'm Sajeetharan Sinnathurai

@sajeetharan
@kokkisajee
@sajeetharan
@sajeetharan

It's game time!

@kokkisajee

#1 developer platform on the planet

40M+

100M+

1000s

1B+

2M+

50%

Developers

Private and public repositories

Top open source communities

Contributions
per year

Organizations

Fortune 500 companies

  • Developers are at the core of innovation.
  •  
  • In the cloud, EVERYONE becomes a developer
  •  
  •  

Core of Innovation

@kokkisajee

Strategic investments for transformative success

 

  •      OpenSource
  •      InnerSource Culture
  •      Secure and Compliant platform

@kokkisajee

Open source is changing how software is developed.

@kokkisajee

Using open source introduces  new challenges, including security and compliance risks

Open source enterprise

Open source enterprise

GitHub and the open source enterprise

Adding one open source library adds

thousands of developers to your team.

Guess what this picture is?

A huge achievement the Event Horizon Team made

achael/eht-imaging  h5py/h5py  PythonCharmers/python-future  networkx/networkx  scipy/scipy  scikit-image/scikit-image  jek/blinker                                brandon-rhodes/pyephem kennethreitz/requests codecov/codecov-python urllib3/urllib3 micheles/decorator pandas-dev/pandas               erikrose/more-itertools pyamg/pyamg pytest-dev/execnet nex3/pygments pypa/readme_renderer python-attrs/attrs yaml/pyyaml boto/botocore   chardet/chardet PyCQA/flake8 aliles/funcsigs imageio/imageio ThomasWaldmann/argparse blink1073/tifffile jupyter-widgets/ipywidgets            pytest-dev/py numpy/numpy sphinx-doc/sphinx calvinchengx/python-unittest2 pytest-dev/pytest-xdist kwgoodman/bottleneck                   pallets/markupsafe kevin1024/pytest-httpbin pytest-dev/apipkg python-excel/xlwt Anorov/PySocks jupyter/nbconvert pytest-dev/pluggy     python/cpython pytest-dev/pytest-runner certik/enum34 statsmodels/statsmodels Blosc/python-blosc spatialaudio/nbsphinx                           pytest-dev/pytest ericgazoni/openpyxl msabramo/tox boto/boto3 pallets/werkzeug python-greenlet/greenlet zzzeek/sqlalchemy                                        ipython/ipykernel pytest-dev/pytest-faulthandler paxan/python-dateutil dask/fastparquet scikit-learn/scikit-learn PyCQA/pyflakes                                                        gsnedders/python-webencodings pytest-dev/pytest-rerunfailures benjaminp/six python-excel/xlrd cython/cython theacodes/cmarkgfm   youngpm/gdalmanylinux   spulec/moto   matplotlib/matplotlib   matplotlib/cycler   pytest-dev/pytest-forked   schlamar/nose-ignore-docstring  numpy/numpydoc shibukawa/snowball_py python-hyper/brotlipy dask/dask pydata/xarray bitprophet/alabaster cheshire/virtualenv                certifi/python-certifi eleddy/numexpr pypa/wheel astropy/astropy ipython/ipython matthew-brett/nb2plots waylan/beautifulsoup pallets/flask  chevah/python-cffi PyCQA/pycodestyle shibukawa/imagesize_py newvem/pytz airspeed-velocity/asv cloudpipe/cloudpickle   eliben/pycparser adamchainz/flake8-comprehensions MobileDynasty/pytest-env brettcannon/importlib python-pillow/Pillow kjd/idna  tornadoweb/tornado    python-babel/babel  pallets/itsdangerous  kataev/flake8-rst  PyCQA/mccabe  matthew-brett/texext   joshspeagle/dynesty  nose-devs/nose mdsitton/configparser-3.2.0r3 lxml/lxml HypothesisWorks/hypothesis getsentry/raven-python calvinchengx/python-mock sphinx-gallery/sphinx-gallery spyder-ide/qtpy gitpython-developers/GitPython  nucleic/kiwi  choldgraf/sphinx-copybutton rtfd/sphinx_rtd_theme                          html5lib/html5lib-python  pallets/click  nedbat/coveragepy  pallets/jinja  mwaskom/seaborn  pydot/pydot  pytest-dev/pytest-mock                    njsmith/colorspacious     SimpleITK/SimpleITKPythonPackage     jazzband/contextlib2     mozilla/bleach tox-dev/detox    pyparsing/pyparsing 

A huge achievement the Event Horizon Team made

21,485

Community contributors

InnerSource

better

performance

x8

@kokkisajee

 

No single person or team can make the progress that we can all make together.

 

@kokkisajee

Security

70% Vulnerabilities

27,000,000 + alerts sent

Automated Security Fixes

Why Github for cloud?

  • Use the tools you know and love
  • Collaboration
  • Community
  • Ecosystem & Automation

Text

Use the tools you know and love

Collaboration

Community

Ecosystem & Automation

Security

Team Management

Nightmares?....             

Stress?......             

Insomnia?......             

Believe me, I did this...

My Desktop

deploy

pray

smoke or manual test

did it work?

no

yes

pray more

smoke or manual test

Most of the times

Start using Github actions

And you stop worrying about....

  • It worked on my laptop
  • It worked with my-dependency v1.X.X
  • It worked with the previous API
  • It worked...

Deploy Angular to Azure with Github actions

Push to

Github

Create

Pipeline

Deploy

and have fun

Add

E2E

Tests

Challenge for the Day!

Code

&

Build

Let's see in action

Access code from:

  • App Service
  • Cognitive Service
  • Github Actions

 

Create actions workflow

Angular.yml

Add the web.config file under /src

name: Deploy to Azure
on:
  push:
    branches:
      - master
env:
  AZURE_WEBAPP_NAME: github-actions-spa
  AZURE_WEBAPP_PACKAGE_PATH: './dist/angulargithubaction'
  NODE_VERSION: '10.x'

jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout
      uses: actions/checkout@master
    - name: Use Node.js ${{ env.NODE_VERSION }}
      uses: actions/setup-node@v1
      with:
        node-version: ${{ env.NODE_VERSION }}
    - name: Install dependencies
      run: npm install
    - name: Build
      run: npm run build -- --prod
    - name: 'Deploy to Azure WebApp'
      uses: azure/webapps-deploy@v1
      with:
        app-name: ${{ env.AZURE_WEBAPP_NAME }}
        publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }}
        package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }}

Github For the Win

@kokkisajee

Where to go from here?

 

- Explore more on Github

- Ask @kokkisajee

- Be a part of Ng-SriLanka 2020

- Rate my talk

   https://www.rateevent.com/speeches/SCAAA903

@kokkisajee

Q&A

I'm not google! or Bing

Please don't ask any!

@kokkisajee

Thank you!

 

@kokkisajee