Comments (24)
from jsbsim.
I just fixed the issue with the API token (I was trying to use Travis token instead of GitHub token)
from jsbsim.
Just pushed a new commit 2594021 that splits the Ubuntu/Debian package in 2 parts runtime
and devel
. The former contains the executables JSBSim
and aeromatic
as well as the required shared libraries. The latter contains the files needed for development (headers and static libraries).
We are getting closer to a normal release process for Linux packages so I also took this opportunity to remove the stand-alone executables from the release.
Next step, build an Ubuntu/Debian package for the python module.
from jsbsim.
I have set up automated builds of JSBSim for Win64 (Release). The builds are managed via AppVeyor and are based on Sean's JSBSim.vcxproj project file. The build environment on AppVeyor site uses Visual Studio 2015. The JSBSim.exe
artifact is uploaded automatically on our GitHub repository as a specifically tagged release (see for example here). The builds are found in the Releases section.
This is a preliminary setup. Since our official build workflow is based on CMake, future Win64 releases should be accomplished with this approach.
from jsbsim.
@agodemar I noticed that AppVeyor supports Visual Studio 2017, but if you don't select a specific version then it defaults to VS2015. So in theory we should be able to select VS2017 and then make use of it's CMake support to use CMake to build the Windows binaries as well.
See - https://www.appveyor.com/docs/build-environment/
I initially looked at Travis in terms of Windows build support but I see there was a comment from a couple of years ago stating that they were going to support Windows but it doesn't look like it's happened yet.
from jsbsim.
@seanmcleod Thanks for the suggestion, I'll look into that and make the switch to VS 2017. I've seen that they also support both Python 2.7 and 3.6 x64, so we can set up the present test suite and in future the new one based on Python 3.
If you succeed in setting up a compilation on your own, please let me know, I'm just an aero eng after all ;-)
from jsbsim.
Now we build on AppVeyor with Visual Studio 2017, Release, x64 from JSBSim.vcxproj
from jsbsim.
@agodemar Unless I am mistaken, every commit is now tagged with JSBSim-win64-v1.0.x
. It seems to be a bit excessive doesn't it ? Each commit has its own unique ID, what is the purpose to add a tag over it ? Isn't there a means to a release a Windows executable without tagging every commit ?
from jsbsim.
@bcoconni Yes it is, I haven't had enough time to look into it. CI it's a relatively new sybject for me. I guess we'll need to set up a conditional compilation.
Regarding the tags, I've lernt from AppVeyor docs that tags are the way to interface AppVeyor with GitHub.
from jsbsim.
@bcoconni I've set a unique tag JSBSim-win64-v2018a
for our deployment workflow via AppVeyor. Hoping that upcoming automatic builds will overwrite the old releases with the same tag.
from jsbsim.
@agodemar OK thanks. We'll see if that works.
I'm currently investigating how to make releases from Travis and AFAICS it requests tags as well. It seems however that Travis can use existing tags so I hope we should be able to use common tags between Travis and AppVeyor.
from jsbsim.
@bcoconni Apparently a new build triggered by a new commit was successfully uploaded to GitHub as a release with the same tag. From the last few messages in the log you'll see that:
- AppVeyor deletes the existing release asset "JSBSim.exe" in the GitHub repository.
- Uploads the newly built "JSBSim.exe" to release assets with the same tag.
101 Warning(s)
0 Error(s)
Time Elapsed 00:01:34.18
Discovering tests...OK
Collecting artifacts...
Found artifact 'Release\JSBSim.exe' matching 'Release\JSBSim.exe' path
Uploading artifacts...
[1/1] Release\JSBSim.exe (1,384,448 bytes)...100%
Deploying using GitHub provider
Creating "JSBSim-win64-v2018a" release for repository "JSBSim-Team/jsbsim" tag "JSBSim-win64-v2018a" commit "4b41c844281fb941145cb53309d63515b80dbba8"...Skipped - release with tag "JSBSim-win64-v2018a" already exists
Deleting existing release asset "JSBSim.exe"...OK
Uploading "JSBSim.exe" to release assets...OK
Build success
See the whole log here.
from jsbsim.
Made a first try for Trusty (Ubuntu Linux) binary upload. It works on my fork but fails on master
. I think this is due to the API token that needs to be modified.
I will investigate that later.
from jsbsim.
FYI
Now also AppVeyor supports Linux builds. Ubuntu images are available to all accounts, free and paid alike. The current working image users will see is based on Ubuntu 16.04 (Xenial Xerus) and a new one based on Ubuntu 18.04 (Bionic Beaver) will be added soon.
There is the Getting started with AppVeyor for Linux guide with a list of supported features and software pre-installed on the image.
from jsbsim.
Great. Now you should make sure that each new deploy from Travis to GitHub always uses the same tag: JSBSim-trusty-v2018a
.
From the build logs on Travis I see also that the Python 3.6 build completes with no errors but fails to deploy.
from jsbsim.
Now you should make sure that each new deploy from Travis to GitHub always uses the same tag:
JSBSim-trusty-v2018a
.
Yes, that's what I'm trying to do... without much success so far.
from jsbsim.
Not there yet but at least Travis is now releasing builds with a legible name JSBSim-trusty-v2018a-{build}
rather than the cryptic untagged-{travis-id}
(commit 4e2869b)
from jsbsim.
@agodemar The windows release from AppVeyor seems to be stuck to commit faf4f75 despite the fact that AppVeyor successfully built the last commit. However there is a skipped message that is suspect about the deployment
Deploying using GitHub provider
Creating "JSBSim-win64-v2018a" release for repository "JSBSim-Team/jsbsim" tag "JSBSim-win64-v2018a" commit "9a24aabc5b83d74fa9dcd4d126e27de53ecbb507"...
Skipped - release with tag "JSBSim-win64-v2018a" already exists
Deleting existing release asset "JSBSim.exe"...OK
Uploading "JSBSim.exe" to release assets...OK
Build success
Also could you please add the aeromatic executable to the list of files included in the release ?
from jsbsim.
In terms of the aeromatic executable on Windows @agodemar asked me to look into getting AppVeyor setup to use CMake to build JSBSim instead of VS project files. I haven't got round to looking into the AppVeyor stuff yet.
And in terms of aeromatic being built using the VS project file for it this doesn't work currently due to a pre-compile step that is being performed in the CMake case that isn't happening for the VS project file case, i.e. generating a header file with version numbers in it.
Coincidentally I sent an email to the mailing list about this issue yesterday.
from jsbsim.
Coincidentally I sent an email to the mailing list about this issue yesterday.
Sorry I missed your message. I will respond on the mailing list.
from jsbsim.
FYI I have updated the Travis process to release an Ubuntu package which is more in line with the way a project is distributed on Linux.
For the moment, I will keep the executables JSBSim
and aeromatic
in the releases but I plan to drop them in favor of the Ubuntu package alone since the executables are only built for Ubuntu Trusty anyway.
from jsbsim.
Next step, build an Ubuntu/Debian package for the python module.
Done via commit 3dd1b95
from jsbsim.
Now you should make sure that each new deploy from Travis to GitHub always uses the same tag:
JSBSim-trusty-v2018a
.
Done via commits e5cc599 and 496c29f. I declare this issue closed for
- Linux binary releases (Travis Ci)
- Windows binary releases (AppVeyor)
I will let you and @seanmcleod tell if the task can be ticked for Windows as well and close the issue accordingly.
from jsbsim.
I think we have a pretty decent binary delivery for both Linux and Windows now.
I am closing this issue. If someone wants to bring additional requirements regarding this topic then I would suggest to open a new ticket.
from jsbsim.
Related Issues (20)
- JSBSim Simulink Function HOT 36
- Rust HOT 13
- Can autopilot feature come to jsbsim- unreal engine 5? HOT 2
- MSVC: toupper is not a member of std HOT 1
- Missing target_include_directories in libJSBSim
- JSBSIM_ prefix in CMake options
- Cython warnings about 'tp_print' which is deprecated
- Wrong calculation of vPQRdot in FGAccelerations class HOT 4
- Fixing the mixture for JSBSim piston aircraft HOT 54
- Request: turbine spindown table or property support HOT 2
- Aircraft crashed on air when rolling consecutively HOT 15
- How Jsbsim models the "+" shaped tail fins of missiles and rockets. HOT 1
- After changing pitch and long initial conditions the yaw angle changes also for no reason HOT 1
- JSBSim interface to Matlab on Windows: throttle command from joystick doesn't work HOT 5
- Trim succeeds and results in NaN values HOT 1
- JSBSim and s-function have different results and different reactivity themselves HOT 1
- Building for Unreal 5 on Linux not working HOT 7
- Javascript alternative? HOT 2
- Linearization and simplex trim from console executable and xml script HOT 16
- FGTurbine Shutdown Spin HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jsbsim.