skahal / buildron Goto Github PK
View Code? Open in Web Editor NEWYour builds, our world!
License: MIT License
Your builds, our world!
License: MIT License
When a connection timeout happens Buidron stops to update info from CI Server.
Buildron stops to refresh builds when a build configuration has no build.
We need "someone" that notifies mods about the events. A pipeline must be created to call the mods interfaces.
Try to put Skydome to works on latest Unity version.
GravarUserAvatarProvider fails when when user has no e-mail.
Today when an user apply a filter from Buildron RC, this filter will be reapply when Buildron starts again, the same should happen with "sort by".
Mod simulator does not show string preferences without default value
When a user that never logged to TeamCity server makes a commit, his avatar does not appear at Buildron.
TeamCityBuildsProvider should use VCS username when TC username is not available
Use Unity Editor Test Runner: http://docs.unity3d.com/Manual/testing-editortestsrunner.html
In config screen when user selects Jenkins or Hudson, the TeamCity logo is still highlighted.
Currently, Buildron shows the current server as an IPv4 address in the lower left corner of the screen. Please add a QR code (possibly replacing the IPv4 address, or in the lower right corner) with the connection information, so as to enable augmented reality scenarios (allows, for example, a remote control running in a tablet, which you point to the monitor running the buildron you want to configure, and shows the options as an overlay over the monitor)
There is no implementation available to this proxy at mod simulator.
Reapply filters from Buildron RC when new builds are created.
Wwhen command line argument "autostart" is used, the config panel should retry to connect to CI server.
This is useful when, for some reason, the CI server is temporally unavailable.
When a mod uses the SortBuildsRemoteControlCommand the sort is right perform, but after the next builds refresh the previous sort by is reused.
This happens because when Buildron RC sends the same command it is intercepted by RemoteControlController.SendToServerSortBuilds method and the values are saved to ServerState:
m_serverState.BuildSortingAlgorithmType = sortingType;
m_serverState.BuildSortBy = sortByProperty;
m_serverService.SaveState(m_serverState);
but when a mod use the sortBuildsRemoteControlCommand it is intercepted by SortingController.Start method and no ServerState is updated:
m_rcService.RemoteControlCommandReceived += (sender, e) => {
var sortCmd = e.Command as SortBuildsRemoteControlCommand;
if(sortCmd != null)
{
OnBuildSortUpdated(new BuildSortUpdatedEventArgs(sortCmd.Algorithm, sortCmd.SortBy));
}
};
Today when an user apply a filter from Buildron RC, this filter will be reapply when Buildron starts again, the same should happen with commands from "Visual" section.
Today when Buildron machine lost connection the message is "CI server is unavailable". We should show a best message to user when in this case.
Add branch information about branch to Build entity (load from CI server apis).
This will allow mods use this information.
Buildron is not refreshing builds when we use "Branch specification" option on TeamCity.
Sorting builds with more than one totem is not working, seems that builds moves vertically and mess up the order.
When user has no Gravatar we could generate an image with username acronym to use has avatar.
Sample: Username Diego.Giacomelli will generate a avatar with "DG" letters.
Implement the IBuildUserAvatarProvider interface to get this done.
Jenkins allow organize jobs by folders, as can see at https://ci.jenkins.io. JenkinsBuildsProvider is not prepared to this structure.
Something like https://github.com/PimDeWitte/UnityMainThreadDispatcher
We need to define an interface or, maybe, interfaces to build a mod.
Something like:
interface IMod
{
void Initialize(ModContext context);
}
class ModContext
{
// Events.
event EventHandler<BuildFoundEventArgs> BuildFound;
event EventHandler<BuildRemovedEventArgs> BuildRemoved;
event EventHandler<BuildUpdatedEventArgs> BuildUpdated;
event EventhHandler<BuildStatusChangedEventArgS> BuildStatusChanged;
event EventhHandler<BuildTriggeredByChangedEventArgS> BuildTriggeredByChanged;
event EventHandler<BuildsRefreshEventArgs> BuildsRefreshed;
event EventHandler<CIServerUpEventArgs> CIServerUp;
event EventHandler<CIServerDownEventArgs> CIServerDown;
event EventHandler<UserFoundEventArgs> UserFound;
event EventHandler<UserUpdatedEventArgs> UserUpdated;
event EventHandler<UserTriggeredBuildEventArgs> UserTriggeredBuild;
event EventHandler<UserRemovedEventArgs> UserRemoved;
event EventHandler<UserAuthenticationSuccessfulEventArgs> UserAuthenticationSuccessful;
event EventHandler<UserAuthenticationFailedEventArgs> UserAuthenticationFailed;
event EventHandler<RemoteControlConnectedEventArgs> RemoteControlConnected;
event EventHandler<RemoteControlDisconnectedEventArgs> RemoteControlDisconnected;
// Properties
IEnumerable<Build> Builds { get; }
Camera Camera { get; }
}
With Initialize(ModContext), a mod can choose which events it wants to listen to.
In the future, this ModContext class with events will allow us to add new events without needing to update all existing mods.
How to load mods on Buildron?
How to load external 3D models?
Must be a simple structure, like the actual "sound mods" that uses a folder to this. See more at: https://github.com/skahal/buildron/wiki/mods-sounds
When a filter is applied from Builron RC and just only one build is filtered, this build does not fall down, but just stay floating in the air.
Buildron stops to update when a firewall page is returned,
Add a SortBuildsRemoteControlCommand constructor override using SortingAlgorithmType to allow mods use this command without need to implement an ISortingAlgorithm.
Add more build running status icons, like:
When a filter is applied the user avatar is showing "expressions" to hiding builds.
How camera will now what is a build? Tag?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.