Michel Buczynski is a DevOps coach working at TD Securities to help implement continuous delivery tools and standardize workflows. He discussed his team's journey from no version control or automation to using tools like Jenkins, SaltStack, Nexus, and Chocolatey. His goals are to produce software efficiently using these tools and coach his team on their use. He emphasized standardizing processes, cleaning up repositories, and enforcing new workflows to help with adoption. He also demonstrated some of the tools in a live session.
Install MariaDB on IBM i - Tips, troubleshooting, and moreRod Flohr
MariaDB is the new open source drop-in replacement for MySQL that has been adopted by IBM for use on Power Linux and IBM i. ZendDBi is the installer provided by Zend for installation of MariaDB on the IBM i. In this session we'll show how to use ZendDBi to install MariaDB and provide some important tips for post-installation. We'll also demonstrate troubleshooting some common installation issues. While most installations of MariaDB are trouble free, the troubleshooting procedures will give us a chance to understand a bit more about the operation of MariaDB on the IBM i. It'll also give us the opportunity to explore some concepts on IBM i that may not be familiar to some RPG programmers.
Kitware is involved with Qt in two main areas. First, Kitware is the provider of the CMake (www.cmake.org) build tool which is used to build KDE, the flagship open source Qt project. In addition, Kitware has been using Qt for the ParaView (www.paraview.org) project. ParaView is an open-source, multi-platform data analysis and visualization application. With the recent change in Qt licensing Kitware is also starting to use Qt for many other open source scientific and medical projects. For cross platform C++ GUI development Qt now stands alone as really the only viable choice. This talk will cover the CMake build system, and the impact Qt and Qt derived projects are having on state of the art scientific computation.
Presentation by BIll Hoffman held during Qt Developer Days 2009.
http://qt.nokia.com/developer/learning/elearning
Everyone knows installing PHP on IBM i is easy. Just download the save file and run the RSTLICPGM command. But not everyone knows what that RSTLICPGM does. What is it putting on the machine? Where is it putting it? How does it all work together? In this session, we'll take a look at the IFS directories added by the Zend Server installer, to see what's in them. We'll see where PHP and PHP extensions, Apache and FastCGI configurations, log files, and more are kept. We'll also talk about how these new file objects interact with existing prerequisite software on the IBM i to present dynamic pages to the web. This session is for PHP developers and administrators interested in learning how PHP fits in with the unique operating environment of IBM i.
Install MariaDB on IBM i - Tips, troubleshooting, and moreRod Flohr
MariaDB is the new open source drop-in replacement for MySQL that has been adopted by IBM for use on Power Linux and IBM i. ZendDBi is the installer provided by Zend for installation of MariaDB on the IBM i. In this session we'll show how to use ZendDBi to install MariaDB and provide some important tips for post-installation. We'll also demonstrate troubleshooting some common installation issues. While most installations of MariaDB are trouble free, the troubleshooting procedures will give us a chance to understand a bit more about the operation of MariaDB on the IBM i. It'll also give us the opportunity to explore some concepts on IBM i that may not be familiar to some RPG programmers.
Kitware is involved with Qt in two main areas. First, Kitware is the provider of the CMake (www.cmake.org) build tool which is used to build KDE, the flagship open source Qt project. In addition, Kitware has been using Qt for the ParaView (www.paraview.org) project. ParaView is an open-source, multi-platform data analysis and visualization application. With the recent change in Qt licensing Kitware is also starting to use Qt for many other open source scientific and medical projects. For cross platform C++ GUI development Qt now stands alone as really the only viable choice. This talk will cover the CMake build system, and the impact Qt and Qt derived projects are having on state of the art scientific computation.
Presentation by BIll Hoffman held during Qt Developer Days 2009.
http://qt.nokia.com/developer/learning/elearning
Everyone knows installing PHP on IBM i is easy. Just download the save file and run the RSTLICPGM command. But not everyone knows what that RSTLICPGM does. What is it putting on the machine? Where is it putting it? How does it all work together? In this session, we'll take a look at the IFS directories added by the Zend Server installer, to see what's in them. We'll see where PHP and PHP extensions, Apache and FastCGI configurations, log files, and more are kept. We'll also talk about how these new file objects interact with existing prerequisite software on the IBM i to present dynamic pages to the web. This session is for PHP developers and administrators interested in learning how PHP fits in with the unique operating environment of IBM i.
XP teams try to keep systems fully integrated at all times, and shorten the feedback cycle to minutes and hours instead of weeks or months. The sooner you know, the sooner you can adapt.
Watch our record for the webinar "Continuous Integration" to explore how Azure DevOps helps us in achieving continuous feedback using continuous integration.
Continuous Delivery: releasing Better and Faster at DashlaneDashlane
An introduction to how the Dashlane Engineering Team worked on achieving Continuous Delivery: the ability to deliver to production, fast, reliably and on-demand, through an industrialized automated Release Pipeline.
Primeros pasos del Software Libre en infraestructura civil Civil Infrastructu...Agustin Benito Bethencourt
Introducción a la iniciativa de la Linux Foundation llamada Civil Infrastructure Platform CIP. Descripción del problema que pretende resolver este grupo y sus primeros pasos Transparencias de la charla impartida en el OpenSOuthCode de Málaga, España.
Using a revision control system that tracks changes in source code with ways to manage your code in separate branches and tag revisions as releases is a bare minimum for developers.
This presentation highlights the importance of using a version control system Subversion.
SESSION TITLE
DevOps - IaC
SESSION THEME
DevOps
SESSION OVERVIEW
This is a hands-on experience workshop on "DevOps - IaC" and Automation from Infrastructure prospective. The session provides valuable insights on How "IaC" is going to be future for traditional DC, VM's and for Cloud, and How to setup or start with "IaC", what tool set and pipelines can be used and followed to move from traditional manual approach to automated DevOps approach.
SESSION AGENDA
What is DevOps? and Why you need DevOps?
What is DevOps - IaC?
Overview of some essential tools like Git, Jenkins, Docker/Ansible
Live Demo
Q&A
SESSION TAKEAWAYS
DevOps - IaC Framework
Overview of Tool Set
Pipeline Creation Overview
Automation Idea
And at last confidence to start a change towards DevOps
DURATION
45 Mins
DevOps Training | DevOps Online Training in Hyderabad.pptxranjithvisualpath44
DevOps - Visualpath offers the Best DevOps Online Training in Hyderabad by real-time experts for hands-on learning. Our DevOps Training Online is available in Hyderabad and provides it to individuals globally in the USA, UK, Canada, Dubai, and Australia. Contact us at +91-9989971070.
Visit https://www.visualpath.in/devops-online-training.html
The NRB Group mainframe day 2021 - DevOps on Z - Jerome Klimm - Benoit EbnerNRB
What can we expect from DevOps on the mainframe and how do we get there? in this presentation you will discover a concrete example of implementation of DevOps on Z.
To successfully deliver your IT project: build your team, build your Agile it...Jean-François Nguyen
Today, we are hearing a lot talking about digital company but many of those same companies are forgetting what is a digital company. Back to basics, It's simply a company dealing with IT projects. So, here is my lessons learnt regarding 'How to deliver successfull IT projects' from my 15 years spent as an IT project manager and my 5 years spent as a Lean & Agile coach.
Session at tcworld 2016. Organized by Kristen James Eberlein (Eberlein Consulting LLC); other participants were Joe Gollner (Gnostyx), George Bina (SyncroSoft), Jean-François Ameye (IXIASOFT), and Eliot Kimber (Contrext).
(SPOT205) 5 Lessons for Managing Massive IT Transformation ProjectsAmazon Web Services
Choice Hotels is undertaking a multiyear, $20 million project to recreate our core business engines on AWS. In trying to approach this complex undertaking, we determined that the project itself is a system too. You can apply principles of good architecture and design work in how you approach the project structure and management. Come to this talk by Choice Hotels’ CTO to learn five key lessons and 20 concrete takeaways that you can implement today to help your AWS projects succeed.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
Mais conteúdo relacionado
Semelhante a Facilitating continuous delivery in a FinTech world with Salt, Jenkins, Nexus and Chocolatey
XP teams try to keep systems fully integrated at all times, and shorten the feedback cycle to minutes and hours instead of weeks or months. The sooner you know, the sooner you can adapt.
Watch our record for the webinar "Continuous Integration" to explore how Azure DevOps helps us in achieving continuous feedback using continuous integration.
Continuous Delivery: releasing Better and Faster at DashlaneDashlane
An introduction to how the Dashlane Engineering Team worked on achieving Continuous Delivery: the ability to deliver to production, fast, reliably and on-demand, through an industrialized automated Release Pipeline.
Primeros pasos del Software Libre en infraestructura civil Civil Infrastructu...Agustin Benito Bethencourt
Introducción a la iniciativa de la Linux Foundation llamada Civil Infrastructure Platform CIP. Descripción del problema que pretende resolver este grupo y sus primeros pasos Transparencias de la charla impartida en el OpenSOuthCode de Málaga, España.
Using a revision control system that tracks changes in source code with ways to manage your code in separate branches and tag revisions as releases is a bare minimum for developers.
This presentation highlights the importance of using a version control system Subversion.
SESSION TITLE
DevOps - IaC
SESSION THEME
DevOps
SESSION OVERVIEW
This is a hands-on experience workshop on "DevOps - IaC" and Automation from Infrastructure prospective. The session provides valuable insights on How "IaC" is going to be future for traditional DC, VM's and for Cloud, and How to setup or start with "IaC", what tool set and pipelines can be used and followed to move from traditional manual approach to automated DevOps approach.
SESSION AGENDA
What is DevOps? and Why you need DevOps?
What is DevOps - IaC?
Overview of some essential tools like Git, Jenkins, Docker/Ansible
Live Demo
Q&A
SESSION TAKEAWAYS
DevOps - IaC Framework
Overview of Tool Set
Pipeline Creation Overview
Automation Idea
And at last confidence to start a change towards DevOps
DURATION
45 Mins
DevOps Training | DevOps Online Training in Hyderabad.pptxranjithvisualpath44
DevOps - Visualpath offers the Best DevOps Online Training in Hyderabad by real-time experts for hands-on learning. Our DevOps Training Online is available in Hyderabad and provides it to individuals globally in the USA, UK, Canada, Dubai, and Australia. Contact us at +91-9989971070.
Visit https://www.visualpath.in/devops-online-training.html
The NRB Group mainframe day 2021 - DevOps on Z - Jerome Klimm - Benoit EbnerNRB
What can we expect from DevOps on the mainframe and how do we get there? in this presentation you will discover a concrete example of implementation of DevOps on Z.
To successfully deliver your IT project: build your team, build your Agile it...Jean-François Nguyen
Today, we are hearing a lot talking about digital company but many of those same companies are forgetting what is a digital company. Back to basics, It's simply a company dealing with IT projects. So, here is my lessons learnt regarding 'How to deliver successfull IT projects' from my 15 years spent as an IT project manager and my 5 years spent as a Lean & Agile coach.
Session at tcworld 2016. Organized by Kristen James Eberlein (Eberlein Consulting LLC); other participants were Joe Gollner (Gnostyx), George Bina (SyncroSoft), Jean-François Ameye (IXIASOFT), and Eliot Kimber (Contrext).
(SPOT205) 5 Lessons for Managing Massive IT Transformation ProjectsAmazon Web Services
Choice Hotels is undertaking a multiyear, $20 million project to recreate our core business engines on AWS. In trying to approach this complex undertaking, we determined that the project itself is a system too. You can apply principles of good architecture and design work in how you approach the project structure and management. Come to this talk by Choice Hotels’ CTO to learn five key lessons and 20 concrete takeaways that you can implement today to help your AWS projects succeed.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
Transform Your Communication with Cloud-Based IVR SolutionsTheSMSPoint
Discover the power of Cloud-Based IVR Solutions to streamline communication processes. Embrace scalability and cost-efficiency while enhancing customer experiences with features like automated call routing and voice recognition. Accessible from anywhere, these solutions integrate seamlessly with existing systems, providing real-time analytics for continuous improvement. Revolutionize your communication strategy today with Cloud-Based IVR Solutions. Learn more at: https://thesmspoint.com/channel/cloud-telephony
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteGoogle
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-pilot-review/
AI Pilot Review: Key Features
✅Deploy AI expert bots in Any Niche With Just A Click
✅With one keyword, generate complete funnels, websites, landing pages, and more.
✅More than 85 AI features are included in the AI pilot.
✅No setup or configuration; use your voice (like Siri) to do whatever you want.
✅You Can Use AI Pilot To Create your version of AI Pilot And Charge People For It…
✅ZERO Manual Work With AI Pilot. Never write, Design, Or Code Again.
✅ZERO Limits On Features Or Usages
✅Use Our AI-powered Traffic To Get Hundreds Of Customers
✅No Complicated Setup: Get Up And Running In 2 Minutes
✅99.99% Up-Time Guaranteed
✅30 Days Money-Back Guarantee
✅ZERO Upfront Cost
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
Launch Your Streaming Platforms in MinutesRoshan Dwivedi
The claim of launching a streaming platform in minutes might be a bit of an exaggeration, but there are services that can significantly streamline the process. Here's a breakdown:
Pros of Speedy Streaming Platform Launch Services:
No coding required: These services often use drag-and-drop interfaces or pre-built templates, eliminating the need for programming knowledge.
Faster setup: Compared to building from scratch, these platforms can get you up and running much quicker.
All-in-one solutions: Many services offer features like content management systems (CMS), video players, and monetization tools, reducing the need for multiple integrations.
Things to Consider:
Limited customization: These platforms may offer less flexibility in design and functionality compared to custom-built solutions.
Scalability: As your audience grows, you might need to upgrade to a more robust platform or encounter limitations with the "quick launch" option.
Features: Carefully evaluate which features are included and if they meet your specific needs (e.g., live streaming, subscription options).
Examples of Services for Launching Streaming Platforms:
Muvi [muvi com]
Uscreen [usencreen tv]
Alternatives to Consider:
Existing Streaming platforms: Platforms like YouTube or Twitch might be suitable for basic streaming needs, though monetization options might be limited.
Custom Development: While more time-consuming, custom development offers the most control and flexibility for your platform.
Overall, launching a streaming platform in minutes might not be entirely realistic, but these services can significantly speed up the process compared to building from scratch. Carefully consider your needs and budget when choosing the best option for you.
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
2. Internal
Disclaimer
While this session is mainly based on work done for various
employers and my contemporary observations, this session
will focus on my personal opinions. As such, material herein
is not necessarily representative of my present or my
previous employers' opinion.
3. Internal
Who am I
Born in '73 and raised in Montreal, work and live in Toronto.
About me:
• I disassembled (hum! Destroy) the family TV at 3 years
old to understand where the images and sounds were
coming from.
• I got my first programming contract at 16.
• I practiced Agile before Agile, and DevOps before
DevOps, and I think I am not alone.
4. Internal
What I am doing now
DevOps Coach
• Implementation of a tools-chain for Continuous Delivery (CD).
• Define a standardized workflow for the CD pipeline.
• Coach team members on how to properly use the tools-chain
and follow the workflow.
• My goal is to ensure that our team produces, delivers, and
maintains efficient and quality software in the easiest and
fastest possible manner.
5. Internal
Current Gig
TD Securities is part of the TD Bank Group
• The Toronto-Dominion Bank & its subsidiaries are collectively
known as TD Bank Group (TD). TD is the sixth largest bank in North
America by branches & serves approximately 22 million
customers in a number of locations in key financial centers
around the globe. Over 85,000 TD employees represent the
strongest team in banking. Delivering legendary customer
experiences is who we are & is part of being the Better Bank.
• I am working in the capital markets division (TD Securities);
specifically for the global equity derivatives business.
6. Internal
FinTech
• FinTech Wikipedia definition:
Financial technology (FinTech or fintech) is the new technology
and innovation that aims to compete with traditional financial
methods in the delivery of financial services.
• FinTech uses the latest IT technologies like Big Data,
IoT, Machine Learning, etc.
• The banking industry is the major provider of financial
services.
• Since the banking industry was one the first users of
computer systems, banks sometimes have to rely on
legacy systems.
7. Internal
The Challenge of DevOps in the Banking Industry
• The size and the age of the enterprise.
• Regulations, compliance, audits, separation of duties, …
• A varied infrastructure based on both legacy and modern
technologies.
• The use of 3rd party and legacy software.
• New Technology Introduction (NTI).
• Conservative approach with a very strong need for
stability.
• Changes will be always difficult to apply because it is
especially difficult to change the way people works. But, it
is also difficult to make change without changing the way
people work.
8. Internal
What our Team Does
• We are a cross-functional team dedicated to producing cutting-
edge FinTech software.
• Most of our development is based on FOSS (Free Open Source
Software) framework or platform: Node.JS, Erlang/Elixir, Angular5,
Scala, Python, R and Java.
• Our software architecture is microservice oriented.
• Our system is integrated with some legacy COTS (Commercial
Off-The-Shelf) applications tied to Windows desktop and server.
• Developing in-house software permits us to have more flexible
and adapted software, effectively leveraging our knowledge
capital and reducing our dependency on 3rd parties.
9. Internal
Our Team's DevOps Journey
A Long Journey Begins with a Single Step
• Most of our application code uses version control (VC) GIT.
• No centralized GIT VC systems employed.
• No automated testing.
• Weekly painful manual deployment. It was honestly an
achievement to have such a short yet manual release
cycle.
10. Internal
Our Team's DevOps Journey
Today
• Application code, configuration (source) and packaged
artifacts (target) are all in VC.
• Continuous Integration.
• Automated deployments.
• Most of our system configuration is automated.
• Most of the application testing is automated.
11. Internal
Our Team's DevOps Journey
The Future
• Provide self-serve services and resources for non-
developers. Ex: Release management, pick commit for
release candidate, release notes automation, etc…
• Make automated testing of infrastructure changes.
• Make provisioning automated on all targets.
• Make success metrics visible.
• Make incident responses automated.
12. Internal
Standardize your Workflow
Everything in VC
• Source code, Source library, Application configs.
• Artifacts, System configuration.
• Package everything, put it in a VC repositories. Especially
what is not your own code.
• The good, the bad and the ugly about .MSI.
• Chocolatey: the solution for Windows.
13. Internal
Standardize your Workflow
Set a common branching model.
• Create your own or use the standard GitFlow.
• The branching model set relations between the target
environment, the approval process, the version numbering, CI
steps, ...
15. Internal
Standardize your Workflow
Set a common version numbering system
• Chocolatey and Nuget package versioning: SemVer.
• The good, the bad and the ugly about SemVer.
• A solutions the YMX.
16. Internal
Standardize your Workflow
Chocolatey and Nuget package versioning.
All version Chocolatey and Nuget support SemVer 1.0 :
A specific version number is in the form Major.Minor.Patch[-Suffix], where the components have the following
meanings:
•Major: Breaking changes
•Minor: New features, but backwards compatible
•Patch: Backwards compatible bug fixes only
•-Suffix (optional): a hyphen followed by a string denoting a pre-release version.
Examples:
1.0.1
6.11.1231
4.3.1-rc
2.2.44-beta
11.0.1-alpha
All version Chocolatey and Nuget also support Microsoft Version Numbers:
A specific version number has the a 4 number form: Major.Minor.Buid.Revision
Chocolatey call this form : Package Fix version Notation
Examples: 1.2.0.20181008
17. Internal
Standardize your Workflow
The good, the bad and the ugly about SemVer.
The good:
• Has release and pre-release version
• Tell you if you need to update:
• MAJOR: Breaking API change
Not safe to update
• MINOR: New features
Safe to update
• PATCH: Bugfixes
Must update
18. Internal
Standardize your Workflow
The good, the bad and the ugly about SemVer.
The bad:
• With rapid space of CD is difficult to follow MAJOR,
MINOR and PATCH ordering.
• It's assumes that every goes well and arrive on time.
• It's only great once the product is done and tested.
19. Internal
Standardize your Workflow
The good, the bad and the ugly about SemVer.
The ugly:
• Difficult to automate.
• Need a lots manual intervention.
• With things like versioning of things API, the MAJOR
and MINOR doesn't mean anything for artifacts
version.
• You can always put the major version in the product
name. Ex: X11, Oracle12c and C
20. Internal
Standardize your workflow
A solution the YMX.
• Inspired on Docker’s versioning scheme
• RELEASE version for master branch: YY.M.N
18.1.9
• RELEASE CANDIDATE Version for release/ and hotfixe/ branch:
YY.M.N-rcX
18.1.9-rc 18.3.2-rc4
• ALPHA Version for feature/ branch: YY.M.N-alpha-DD-hhhhhhh
18.3.3-alpha-08-df81230 for the commit done the Mars 8th 2018
in preparation for third release in Mars 2018
RELEASE CANDIDATE Version for release/ and hotfixe/ branch:
YY.M.N-rcX
21. Internal
Standardize your Workflow
Clean up and Enforce
• Clean up all your repositories.
• By doing a clean-up, it is the right time to introduce new
tools and processes.
• Train your team to use new tools and teach them how to
apply your workflow and demonstrate why.
• Enforce workflow progressively by applying it, with a small
group of team members and target applications.
22. Internal
Jenkins 2
• Pipeline as a code.
• Create your own Shared Libraries.
• YMX automatic versioning.
• <Live demo>
23. Internal
Jenkins 2
Pipeline as a code.
• Pipeline as Code describes a set of features that allow Jenkins
users to define pipelined job processes with code, stored and
versioned in a source repository. These features allow Jenkins to
discover, manage, and run jobs for multiple source repositories
and branches — eliminating the need for manual job creation
and management.
• To use Pipeline as Code, projects must contain a file named
Jenkinsfile in the repository root, which contains a "Pipeline
script."
24. Internal
Jenkins 2
Create your own Shared Libraries.
• As Pipeline is adopted for more and more projects in an
organization, common patterns are likely to emerge.
Oftentimes it is useful to share parts of Pipelines between
various projects to reduce redundancies and keep code
"DRY".
• Pipeline has support for creating "Shared Libraries" which
can be defined in external source control repositories and
loaded into existing Pipelines
25. Internal
Jenkins 2
Create your own Shared Libraries.
• Declarative Pipeline
• Scripted Pipeline
Directory structure
The directory structure of a Shared Library repository is as follows:
(root)
+- src # Groovy source files
| +- org
| +- foo
| +- Bar.groovy # for org.foo.Bar class
+- vars
| +- foo.groovy # for global 'foo' variable
| +- foo.txt # help for 'foo' variable
| +- bar.groovy # bar custom step, call def call()
+- resources # resource files (external libraries only)
| +- org
| +- foo
| +- bar.json # static helper data for org.foo.Bar
28. Internal
Sonatype Nexus
Nexus Reposory Manager introduction
• Universal package manager
That give us the ability to apply security and compliance
metrics across all artifact types. Universal package managers
have been referred to as being at the center of a DevOps
toolchain
• Nexus Repository OSS 3.xx, supports those formats:
APT, Composer, Conan, CPAN, Docker, ELPA, Git LFS, Helm,
Maven, npm, NuGet, P2, PyPI, R, Raw, RubyGems, Yum
29. Internal
Sonatype Nexus
Consideration for Chocolatey.
• Don’t mix Nuget package with Chocolatey package. Even if
Chocolatey is based on the NuGet framework, it doesn’t mean
that they are the same type of package.
• Separated in different repositories, depending on the target.
Users workstations, developer workstations, agents
workstations, servers. You can also create separate repositories
for certain products.
31. Internal
SaltStack
• Introducing SaltStack
• Salt architecture
• Execute remote or local command
• Salt and Chocolatey.
• Defining the desired States
• Jinja2 and Pillars
• Live demo.
32. Internal
SaltStack
Introducing SaltStack
• Open-source configuration management software and
remote execution engine.
• Infrastructure as code
• Python based
• Use asynchronous messaging queue
• Fast and scalable
• Mainly referred as “Salt”
33. Internal
SaltStack
Salt architecture
• Designed for high speed data collection and execution in
system administration environments. At beginning Salt
was relying on ZeroMQ. Salt now has is own realiable
queuing transport system: RAET (Reliable Asynchronous
Event Transport Protocol). Which permit Salt to be
scalable well beyond tens of thousands of servers.
34. Internal
SaltStack
Salt architecture
• Salt mainly use a slave-master setup, that enables Salt to
do push or pull remote execution. The slave or the agent
is called : Minion.
• Minion can be also be used alone in a MasterLess mode.
• Salt has also AgentLess mode called: Salt-SSH. Salt has
no Windows AgentLess mode yet.
35. Internal
SaltStack
Salt architecture
• Salt mainly use a slave-master setup, that enables Salt to
do push or pull execution. The slave or the agent is called
: Minion.
• Minion can be also be used alone in a MasterLess mode.
• Salt has also AgentLess mode called: Salt-SSH. Salt has
no Windows AgentLess mode yet.
• Salt permit also event-driven execution and self-healing.
36. Internal
SaltStack
Salt architecture
• The modular design of Salt is done by module written in
Python. By the abilities to write your own Salt Module,
Salt is easily extensible.
• Module types:
• Execution modules
• State modules
• Grains
• Renderer modules
• Returners
• Runners
42. Internal
Choclatey hacks
• Multiple instances of Chocolatey.
• Mock a package install.
Workstations
• Internalize your Chocolatey packages.
• Onboarding developers workstation.
• Life without Citrix.
43. Internal
What we've Learned
• Patience. Renovating a house will always take more
resources than building a new one. But the
importance is to always be evolving.
• Impose standardization of your process. Less
experienced team members will often have a certain
lack of discipline. But some older team members are
more resistant to change their discipline.
• Make the jobs fun. Try to replace boring tasks by
automated process or try to reduce time past on
those boring tasks.
44. Internal
What we learn
• Try to avoid everything that is not human readable
like .MSI, .XML and Windows registry.
• Click, click alone is really very bad. If you can write a
how-to wiki. You can write a script (preferably with a
CM). If you have a good script, you can do a one-
liner command. With that you can easily create a
WebUI or GUI for a secure self-service.
• Concentrate on useful metrics and make only useful
alerts.
• Innovate and don't be afraid to push the envelope
45. Internal
Thanks
• A special thanks to my team at TD.
• To Rob Reynolds, to make me love Windows again.
• Chocolatey Fest team…