X(cross) Development System make AGL application development easier. December 2017 Sébastien Douheret

Similar documents
X(cross) Development System make AGL application development easier. July 2017 Sébastien Douheret

AMM Feb/2018. Frederic Marec Embedded Engineer

Fosdem Feb/2018. Frederic Marec Embedded Engineer

Improving the Yocto Project Developer Experience. How New Tools Will Enable a Better Workflow October 2016 Henry Bruce

Creating a profile from Tizen:Common. Stéphane Desneux Senior Software Engineer Eurogiciel

CAN Signaling Agent. A generic model to handle signals. AGL AMM Feb/2017 Fulup Ar Foll Lead Architect

Connected Cars & Security Challenges. Stéphane Desneux CTO at IoT.bzh

Application & Security Framework AGL-2.0 Architecture Proposal. Winter/AGL-AMM Tokyo 2016 Fulup Ar Foll Lead Architect

Table of Contents 1.1. Introduction 1.2. Document revisions. Part 1 - Getting Started for Users Installing xds client tools 1.3.

Tizen IVI Architecture New features

Tizen IVI Architecture New features. Dominig ar Foll, Intel Open Source

IBM Cloud Developer Tools (IDT) and App Service Console Overview

Cross platform enablement for the yocto project with containers. ELC 2017 Randy Witt Intel Open Source Technology Center

Yocto Layers and Device Profiles July 11, 2017

OpenShift Roadmap Enterprise Kubernetes for Developers. Clayton Coleman, Architect, OpenShift

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

HTML5 Applications Made Easy on Tizen IVI. Brian Jones / Jimmy Huang

Docker Universal Control Plane Deploy and Manage On-Premises, Your Dockerized Distributed Applications

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI /

Introduction to application framework

Developing Microsoft Azure Solutions (70-532) Syllabus

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

ovirt Node November 1, 2011 Mike Burns Alan Pevec Perry Myers ovirt Node 1

Docker and Oracle Everything You Wanted To Know

UNDER THE HOOD. ROGER NUNN Principal Architect/EMEA Solution Manager 21/01/2015

Agile CI/CD with Jenkins and/at ZeroStack. Kiran Bondalapati CTO, Co-Founder & Jenkins Admin ZeroStack, Inc. (

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC

Azure Day Application Development. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

Containers OpenStack. Murano brings Docker & Kubernetes to OpenStack. Serg Melikyan. software.mirantis.com. January 27, 2015

Steps to Set Up the Environment of Xamarin in Visual

Kubernetes made easy with Docker EE. Patrick van der Bleek Sr. Solutions Engineer NEMEA

DevOps Course Content

The Automotive Grade Linux Build Service. ALS Tokyo '14, Jan-Simon Möller

JBOSS MIDDLEWARE TO THE CLOUD. MICHAEL EPLEY Sr JBoss Solutions Architect, IC Specialist 2014 June

Multi-Arch Layered Image Build System

Think Small to Scale Big

Developing Microsoft Azure Solutions (70-532) Syllabus

Turbo boost your digital app test automation with Jenkins

ovirt Node June 9, 2012 Mike Burns ovirt Node 1

SeeTest Quality Assurance Platform On-premise Digital Assurance Lab

Security and privacy in your embedded systems

Simplified CICD with Jenkins and Git on the ZeroStack Platform

Using Visual Studio and VS Code for Embedded C/C++ Development. Marc Goodner, Principal Program Manager, Microsoft

LINUX CONTAINERS. Where Enterprise Meets Embedded Operating Environments WHEN IT MATTERS, IT RUNS ON WIND RIVER

Exam : Implementing Microsoft Azure Infrastructure Solutions

IBM Bluemix platform as a service (PaaS)

Contributing to Automotive Grade Linux and GENIVI Development Platform

Leveraging OpenID To connect Vehicle to the Cloud

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

Dockerized Tizen Platform

Experiences with OracleVM 3.3

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

We are ready to serve Latest Testing Trends, Are you ready to learn?? New Batches Info

Table of Contents 1.1. Introduction 1.2. Document revisions 1.3. Part 1 - Getting Started for Users. Installing xds client tools 1.3.

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps

EasyLogin. Intro to the Alpha version

AD105 Introduction to Application Development for the IBM Workplace Managed Client

An Introduction to Android. Jason Chen Developer Advocate Google I/O 2008

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

Citrix Workspace Cloud

DevOps Using VSTS and Azure

.NET C# C++ JavaScript PHP Python Node.js R Cordova Unity Java Perl

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Web and API Apps in Azure

Salesforce DX Setup Guide

WebStorm, intelligent IDE for JavaScript development

Red Hat OpenShift Application Runtimes 1

Salesforce DX Setup Guide

systemd integration and user management José Bollo

ViryaOS RFC: Secure Containers for Embedded and IoT. A proposal for a new Xen Project sub-project

Continuous Integration using Docker & Jenkins

70-532: Developing Microsoft Azure Solutions

TECHNICAL BRIEF. Scheduling and Orchestration of Heterogeneous Docker-Based IT Landscapes. January 2017 Version 2.0 For Public Use

Deep Dive on AWS CodeStar

70-532: Developing Microsoft Azure Solutions

Developing Microsoft Azure Solutions (70-532) Syllabus

Improving the Magento 2 Developer Experience

FROM VSTS TO AZURE DEVOPS

MarkLogic Server. MarkLogic Server on Microsoft Azure Guide. MarkLogic 9 January, 2018

Eclipse Kuksa. Introduction to the Eclipse IoT Working Group

20532D: Developing Microsoft Azure Solutions

Participant Handbook

Red Hat OpenShift Roadmap Q4 CY16 and H1 CY17 Releases. Lutz Lange Solution

Graphics Performance Analyzer for Android

Red Hat Roadmap for Containers and DevOps

Yocto Overview. Dexuan Cui Intel Corporation

HOW REACT NATIVE AND NATIVESCRIPT CHANGE YOUR MOBILE STRATEGY SEBASTIAN

App Service Overview. Rand Pagels Azure Technical Specialist - Application Development US Great Lakes Region

Linux Containers Roadmap Red Hat Enterprise Linux 7 RC. Bhavna Sarathy Senior Technology Product Manager, Red Hat

Azure Highlights. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

Use Case: Scalable applications

Scientific Software Development with Eclipse

AGL/Phase 2 - Pulse Audio Routing Module

Esri Developer Summit in Europe Building Applications with ArcGIS Runtime SDK for Java

Deployment Patterns using Docker and Chef

The Now Platform Reference Guide

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

ACCELERATE APPLICATION DELIVERY WITH OPENSHIFT. Siamak Sadeghianfar Sr Technical Marketing Manager, April 2016

Oracle Application Container Cloud

Transcription:

make AGL application development easier Sébastien Douheret sebastien.douheret@iot.bzh

IoT.bzh Located in France - Brittany ( Vannes / Lorient / Rennes ) People background: 40% coming from Tizen IVI (Intel+Samsung) 40% coming from Wind River 20% coming from industry Working on AGL since 2015 First technical contributor on AGL 2

Key Focuses Cybersecurity Secure Application Framework (life cycle, MAC, Cynara, Systemd, Cgroups, Namespaces...) Vehicle to Cloud, Identity management Securing key platform services (audio, signaling, graphics ) Development Tools Docker Platform development (AGL SDK) Apps development from IDE: XDS (Cross Development System) Platform Monitoring tools Integration Yocto recipes, Releases automation & Testing (CI) Renesas boards support Community Support Documentation (kickstart, developer samples, guides ) White Papers & Conferences (Genivi, AGL, Fosdem, ELC ) 3

(XDS) Dedicated to Applications Developers enable apps developer without Yocto skills Cross-platform build using AGL SDK toolchain Secure packaging (.wgt files including signatures) Deploy on development boards (or Qemu image) Remote debugging from IDE Easy target access (console, SSH, ) Developer environment is a standard IDE Dashboard Web App to manage configurations and trigger actions Provide an XDS API ie CI workflows or specific environments 4

Key Features Multi-platform : no dependencies on developer host (Linux / Windows / MacOS) Easy to setup Near-zero install, no admin privileges required Application sources remain local Compatibility with existing IT policies (e.g. corporate backup, git,...) Cross toolchain & tools embedded in a container : Local : run locally (local subsystem, virtual machine, docker container...) On-premises : run on a local build server Cloud : SaaS Leverage specific OS capabilities where applicable (e.g. Linux for Windows Subsystem, docker) 5

Targeted Use Cases Single Host mode Local Network mode Cloud mode Host: Windows Host: Linux Host: Linux IDE: Eclipse IDE: Visual Code IDE: Eclipse Container: Docker Container: Linux Subsystem Sources: shared through native access Dev Host Windows IDE Sources: shared through docker volume Target IDE IDE Linux Subsystem USB or local network Sources: shared through sync tool Dev Host Dev Host Linux XDS Server Container: Docker running in the Cloud Local network Target Local network Build Host Docker XDS server Target Cloud Docker XDS Server 6

Architecture Development DevelopmentHost Host XDS XDSServer ServerContainer Container Linux Linux/ /Windows Windows/ /MacOS MacOS IDE UI (Eclipse, Visual Studio Code, ) XDS plugin Local Localororremote remote Command line xds-cli Local network or Cloud network REST + WS XDS-agent App sources XDS-server Cross Toolchain B Cross Toolchain A Files File Sync File Sync Files App sources (duplicated) deployment Direct link (eg. USB <=> Ethernet) Target Target AGL repo These blocks may be bypassed when files can be shared over a local network (eg. NFS mount or docker volume) 7

XDS Implementation Written in GO (portable Linux/Windows/MacOS) Dashboard (webapp Angular4, TypeScript 2) to make development setup easier REST API + WebSocket (socket.io) File synchronization based on Syncthing Cloud model [1] to support XDS server integrated into AGL SDK docker image (see flavour xds [2]) [1]: https://syncthing.net/ [2]: https://git.automotivelinux.org/agl/docker-worker-generator/ 8

XDS building blocks xds-server Core of the system, running in container: Control file synchronizer (Syncthing) on server/ in container Manage (install, list, remove) AGL SDKs Client side part, running on developer host. Provide Dashboard as a webapp Control file synchronizer (Syncthing) on developer's machine Target terminal (work in progress) xds-cli Websocket to get asynchronously data (commands output) or events (commands exit) xds-agent (client) REST API interface over HTTP to config and trigger commands Command line tool for XDS. xds-gdb Command line tool to allow application debugging (based on gdb). 9

Develop AGL app with XDS 1) Install xds-server on a build server machine 2) Install xds-agent and start-it on your machine 3) Browse XDS dashboard: http://localhost:8800 4) Add a new project 5) Cross build/compile your project using either : 1) Dashboard build page 2) IDE using xds-cli 6) Deploy app 7) Source debug from IDE (xds-gdb) 10

Available as today Release Candidate 1 (v1.0.0-rc1) Pre-build docker image including XDS server Packaged Multi-platforms (Linux / Windows/ MacOS) host tools : xds-agent, xds-cli, xds-gdb Supported file sharing: Cloud mode or path mapping Command line tool (xds-cli) or Webapp (Dashboard) IDE integration (manual setup) Debugging mode (based on gdb and AGL apptemplates) 11

Available as today User s guide and more documentation online: http://docs.automotivelinux.org/docs/devguides/en/dev/#xcross-development-system-user's-guide Binary packages available for Linux distros on opensuse Build Service: https://build.opensuse.org/project/show/isv:linuxautomotive:app-development Sources available on Github xds-server : xds-agent : xds-cli: xds-gdb: https://github.com/iotbzh/xds-server https://github.com/iotbzh/xds-agent https://github.com/iotbzh/xds-cli https://github.com/iotbzh/xds-gdb 12

Roadmap 1st Release v1.0.0 (CES January 18) Dashboard improvements Support multiple file sharing (simple pathmapping, NFS, syncthing) AGL SDK management (add, remove) Target setup and target terminal integration in dashboard Better integration in IDE (templates) Improve/document debugging support Document REST API 13

Contacts Sébastien Douheret <sebastien.douheret@iot.bzh> Stéphane Desneux <stephane.desneux@iot.bzh> 14

Q&A Gulf of Morbihan, south of Brittany, France 15