apidays LIVE Paris 2021 - APIs and the Future of Software
December 7, 8 & 9, 2021
APIGEE, different ways for integrating with CI/CD pipelines
Nejmeddine Ben Ouarred, Head Of API Practice at Sfeir
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD pipelines by Nejmeddine Ben Ouarred, Sfeir
1.
2. Nejmeddine BEN OUARRED
Head of API practice & Cloud Architect at Sfeir
Trainer Cloud, API, Security
14 years experience
3. About SFEIR
Cloud · Data · ML · K8S ·API · Web ·
Mobile
120+
customers
20
Authorized
Trainers GCP
2008
Pioneer in
France on GCP
2017
Premier Partner
650+
expert
engineers
63 M€
turnover (+20%)
Paris · Bordeaux · Lille · Luxembourg · Nantes · Strasbourg
our
workloads
5. New York
JULY
Australia
SEPTEMBER
Singapore
APRIL
Helsinki & North
MARCH
Paris
DECEMBER
London
OCTOBER
Jakarta
FEBRUARY
Hong Kong
AUGUST
JUNE
India
MAY
Check out our API Conferences here
50+ events since 2012, 14 countries, 2,000+ speakers, 50,000+ attendees,
300k+ online community
Want to talk at one of our conferences?
Apply to speak here
9. Gartner has recognized Google
Clou d ’s Ap ig e e a s a Le a d e r in
th e 20 21Ma g ic Qu a d ra n t for Fu ll
Life Cycle AP I Ma n a g e m e n t.
AP IGEE offe r fle xib le p la tform
d e p loym e n t op tion s:
- OP DK
- Sa a S (Ed g e , Ap ig e e X)
- Hyb rid
API Management - APIGEE
10. CI/CD main steps
9
Source: https://swagger.io/blog/api-design/design-first-or-code-first-api-development/
Deploy
Code Build Test
Release
Code Build Deploy Test Monitor
Up p e r e n viro n m e nts
Fe a tu re b ra n c h Fe a tu re b ra n c h De v b ra n c h
Prim a ry b ra nc h
CI
CD
12. Design Phase: API Life cycle
11
Design First vs Code First API Development
Source: https://swagger.io/blog/api-design/design-first-or-code-first-api-development/
19. Unit and manual testing using the Apigee
Emulator (local runtime)
Dev Phase: local dev
Source: https://cloud.google.com/apigee/docs/api-platform/local-development/overview?authuser=1
20. Dev Phase: APIGEE Lint
19
Apigee Lint
⇒ For proxy and sharedflow code analysis:
- npm install -g apigeelint
source: https://github.com/apigee/apigeelint
JS Lint
⇒ For javascript code
SonarQube
⇒ For java and python code
22. Test Phase: Integration Testing
21
Behaviour Driven Development testing tool:
⇒ FitNesse
⇒ cucumber
⇒ karate
⇒ apickli (@apigee)
Gherkin is the language Cucumber use to define test case
Scenario: Testing the exact response of a GET
endpoint
Given url 'http://localhost:8097/user/get'
When method GET
Then status 200
And match $ == {id:"1234",name:"John Smith"}
Scenario: Testing a POST endpoint with request
body
Given url 'http://localhost:8097/user/create'
And request { id: '1234' , name: 'John Smith'}
When method POST
Then status 200
And match $ contains {id:"#notnull"}
24. Deployment Phase: Maven
23
Official Maven Plugin
⇒ Build and deploy Apigee proxies
using the apigee -deploy -maven -
plugin : The Apigee deploy maven
plugin is used to build and deploy
Apigee proxies and shared flows.
⇒ Manage and deploy Apigee
configuration using the apigee -config -
maven -plugin: This plugin can be used
as part of a CI/CD process to deploy
changes to configuration.
25. Deployment Phase: Terraform
24
For fun of terraform, an interesting
terraform developed by @scastria th a t
cove r:
- Ad m in istra tion
- P roxie s, sh a re d flows, kvm ,
- AP I p rod u ct, Ap p , De ve lop e rs,
- De p loym e n t
26. apigeetool for Apigee OPDK & Apigee Edge:
apigeetool deployproxy -u sdoe@example.com -o sdoe -e test -n example-proxy -d .
apigee -sackmesser for Ap ig e e Ed g e , Ap ig e e X & Hyb rid
sackmesser deploy -g https://github.com/apigee/devrel/tree/main/references/cicd-pipeline
--googleapi -t "$TOKEN" -o "$APIGEE_X_ORG" -e "$APIGEE_X_ENV" -b "/airports/v1"
Deployment Phase: command line tools
30. New York
JULY
Australia
SEPTEMBER
Singapore
APRIL
Helsinki & North
MARCH
Paris
DECEMBER
London
OCTOBER
Jakarta
FEBRUARY
Hong Kong
AUGUST
JUNE
India
MAY
Check out our API Conferences here
50+ events since 2012, 14 countries, 2,000+ speakers, 50,000+ attendees,
300k+ online community
Want to talk at one of our conferences?
Apply to speak here