GithubHelp home page GithubHelp logo

eclipse-plugin's Introduction

Eclipse Plugin for Codenvy

Description

This project aims to provide an Eclipse plugin to give the ability to developers to work either on Codenvy or in Eclipse, sharing the same code base without the need of a Git repo.

Update sites

Build the project with Maven

Prerequisites:

  • a Maven installation, minimum version 3.2,
  • a JDK, minimum version 7.

Steps:

  1. Clone the project:

     git clone https://github.com/codenvy/eclipse-plugin.git
    
  2. Execute the following commands:

     cd eclipse-plugin
     mvn clean install
    

Warning: It will launch UI integration tests with SWTBot, be careful not to preempt focus when those tests are running to avoid a test failure.

Get this project working under Eclipse

Prerequisites:

  • same as those of the Maven build,
  • plus an Eclipse installation with m2e and PDE plug-ins installed,
  • having a M2_REPO variable configured in Eclipse:
    1. In Eclipse preferences, go to ‘Run/Debug → String Substitution’.
    2. Create a ‘New String Substitution Variable’ with M2_REPO as name and the path to your Maven local repository as value.

Steps:

  1. Import the Git project as a Maven project in Eclipse (be careful to import all its submodules too),
  2. Wait for the projects to be configured (some errors should be reported on projects, it's normal as target is not yet configured),
  3. For a Luna target, open 4.4.target under com.codenvy.eclipse.target (relative to project root),
  4. Click on ‘Set as Target Platform’ in the upper right corner of the editor to set this as the default target platform,
  5. Update all the projects (the root one and its submodules) through ‘Maven → Update Project…’.

Run the plugin

Once the project imported in Eclipse, right-click its sub-module com.codenvy.eclipse.ui and chose ‘Run as → Eclipse Application’.

Release the plugin

  1. Clone the project:

     git clone https://github.com/codenvy/eclipse-plugin.git
     cd eclipse-plugin
    
  2. Prepare release:

     mvn tycho-versions:set-version -DnewVersion=${releaseVersion}
     mvn clean install
     git commit -am "Prepare release ${releaseVersion}"
     git push origin master
    
  3. Tag released version:

     git tag -a ${releaseVersion} -m "Tag ${releaseVersion}"
     git push origin ${releaseVersion}
    
  4. Prepare for next development iteration:

     mvn tycho-versions:set-version -DnewVersion=${nextDevelopmentVersion}
     mvn clean install
     git commit -am "Prepare for next development iteration"
     git push origin master
    

License

Copyright (c) 2012-2014 Codenvy, S.A.

All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html

Contributors: Codenvy, S.A. - initial API and implementation

eclipse-plugin's People

Contributors

kevinpollet avatar sunix avatar wafabr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

eclipse-plugin's Issues

Renew token when expired

Token is stored in secure storage. It can expire and must be renewed in this case.

Detect if the tocken is expired.

Project sync: define the sync model

Design how to implement, which format to use globally so Eclipse client can work offline and know what have been modified, new files, deleted files

Add UI tests for issue #19

Things to test :

  • retrieval of already existing URL (repository location) at wizard creation,
  • behavior when filling URL field manually (completion if URL is an existing one in secure storage and has one or usernames associated, keep the list with the suggested one either),
  • behavior when selecting the URL in the list,
  • behavior when filling username field manually,
  • behavior when on focus out,
  • should enable next when all fields are completed.

Store Codenvy instance urls in eclipse preferences

In the first step of the import wizard the user select or type the codenvy url.

  • The suggested urls in the combobox could be retrieved from eclipse preferences.
  • The new added url would be added in the preferences automatically

Create a Jenkins job

For now,

  • lib plugin has to be built before the Eclipse plugins and in another job. #28
  • needs failsafe with tycho surefire. see #2
  • swtbot on jenkins ? need headless or use xvnc

Rename GitHub repository to eclipse-plugin

Tyler said:

The top level project should be named eclipse-plugin to purposely avoid being too close to the other plugins :). The other plugins go into the sdk and are all the same structure, but this plugin is quite different.

Provides run on Codenvy options to imported projects

Remote Run in Codenvy

  • In a Eclipse project with the Codenvy nature, provide a Eclipise Runner available throught "Run As" menu
  • This would run the Remote Codenvy Runner
  • The logs output are displayed in the Eclipse console
  • Launch Embedded browser if this is a web app

Use credentials in secure storage for project sync

When syncing a local project with its Codenvy remote repository, we should take the credentials stored in the secure storage of Eclipse to authenticate the user. Both user password and Codenvy token are stored.

Deploy Codenvy eclipse plugin update sites

  • Add update site url to features
  • We need the following update sites
    • http://{host}/eclipse-plugin/updates - last release
    • http://{host}/eclipse-plugin/updates-nightly - last build from Jenkins
    • http://{host}/eclipse-plugin/updates-{version} - older versions, version is the version number

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.