Project Description
This addin allows publishing your project directly from Visual Studio, thus eliminating the unnecessary step of going to the CodePlex site to publish.

Currently allows publishing only ClickOnce releases to CodePlex, but I may be adding the ability to publish regular releases as well; will see how useful that option might be - after all, publishing ClickOnce releases is somewhat cumbersome, but normal releases are easy enough (and, possibly, more convenient) to do through the web interface.
The recommended for download release is a ClickOnce release, published using this plugin. You will download and install the installer for the plugin that shows the currently installed version of the plugin (N/A if you dont have it), and the available version. And gives you the ability to install the new version. Since it is a ClickOnce application, it will automatically ask you to update when you run in (if a new version is out), so this is a good test case/example, I think.

Short usage instructions

  • When you install the plugin, it will add a toolbar to you VisualStudio that is similar to the existing "Web One Click Publish" toolbar. Note that you may need to manually show the toolbar (i.e. it might not be visible automatically)
  • The toolbar has a combo-box and two buttons. The Edit button allows you to configure the publishing profiles. Each profile consists of: your codeplex username, password, project name, and project url. Additionally, each profile contains settings for the release: release name, description, date, status, Default/not, and changeset id. In order to publish your project, you must fill all these settings correctly. In the future, I will be adding an inline checker for validity of these settings.
  • Additionally, you must set up ClickOnce publishing settings inside your project correctly, in order to publish. That includes settings the publish location correct, and adding a certificate to your project. Basically, test ClickOnce publishing locally, and when it works, you are ready to publish using the plugin.
  • * ALSO note that the plugin has an optional option to replace an existing release. That is, if the release with the specified name already exists, the plugin will edit it's description, etc. and upload the new file. This allows you to keep the same release name, but update its settings and file - whatever your reasons may be for that.

Roadmap

So far, all features that can be implemented (i.e. are supported by the CodePlex API), are implemented. However, there are a number of shortcomings and annoyances. Knowing that the CodePlex team is actively working on their website and the API, and that the next release of the API should come sometime in August, here's what I will do as more things become possible to do through the CodePlex API:
  • Replacing a release. This is currently done when the release with the specified name already exists. I will be adding an option to pick a release you want to edit, thus allowing you to edit the name as well, making this option more flexible as a result.
  • Retrieving a list of all releases - a nice to have feature, so you could see the names of previous releaes, etc. Once this is done, you will be able to select a release to replace (see previous point) and edit - e.g. change description, etc.
  • Browsing changesets - some of us like associating releases with specific changesets, but currently there isn't functionality (on the website, or in the plugin) to see what changesets you have at release creation time. This forces you to go browse your changesets, copy the changeset id and then paste it. If there was a "Browse for changeset" button, this would be easier; so, when this is possible, I'll be adding this.
  • And finally, though perhaps much more important than the above, is supporting VS2008 and 2005. The plugin currently only installs on VS2010, as that was the easiest for me to get started with, but it is of course useful on the previous versions of VS too. I'll be experimenting with this.

Last edited Aug 31, 2010 at 8:10 PM by AASoft, version 10