/// <reference path="../../includes.ts"/> /// <reference path="kubernetesPlugin.ts"/> module Kubernetes { export var BuildsController = controller("BuildsController", ["$scope", "KubernetesModel", "KubernetesState", "$dialog", "$window", "$templateCache", "$routeParams", "$location", "localStorage", "$http", "$timeout", "KubernetesApiURL", ($scope, KubernetesModel:Kubernetes.KubernetesModelService, KubernetesState, $dialog, $window, $templateCache, $routeParams, $location:ng.ILocationService, localStorage, $http, $timeout, KubernetesApiURL) => { $scope.kubernetes = KubernetesState; $scope.model = KubernetesModel; $scope.buildConfigId = $routeParams["id"]; $scope.$on('kubernetesModelUpdated', function () { Core.$apply($scope); }); $scope.tableConfig = { data: 'model.builds', showSelectionCheckbox: true, enableRowClickSelection: false, multiSelect: true, selectedItems: [], filterOptions: { filterText: $location.search()["q"] || '' }, columnDefs: [ { field: 'metadata.name', displayName: 'Name', cellTemplate: $templateCache.get("buildLinkTemplate.html") }, { field: '$creationDate', displayName: 'Time', defaultSort: true, cellTemplate: $templateCache.get("buildTimeTemplate.html") }, { field: 'status', displayName: 'Status', cellTemplate: $templateCache.get("buildStatusTemplate.html") }, { field: '$logsLink', displayName: 'Logs', cellTemplate: $templateCache.get("buildLogsTemplate.html") }, { field: '$podLink', displayName: 'Build Pod', cellTemplate: $templateCache.get("buildPodTemplate.html") }, /* { field: 'parameters.source.type', displayName: 'Source' }, */ { field: 'spec.source.git.uri', displayName: 'Repository', cellTemplate: $templateCache.get("buildRepositoryTemplate.html") }, { field: 'spec.strategy.type', displayName: 'Strategy' }, { field: 'spec.strategy.sourceStrategy.from.name', displayName: 'Source Image' }, { field: 'spec.output.to.name', displayName: 'Output Image' }] }; Kubernetes.initShared($scope, $location, $http, $timeout, $routeParams, KubernetesModel, KubernetesState, KubernetesApiURL); $scope.breadcrumbConfig = Developer.createProjectBreadcrumbs($scope.buildConfigId); $scope.subTabConfig = Developer.createProjectSubNavBars($scope.buildConfigId, null, $scope); $scope.$on('kubernetesModelUpdated', function () { updateData(); }); function updateData() { if ($scope.model) { var builds = $scope.model.builds; var buildConfigId = $scope.buildConfigId; enrichBuilds(builds); $scope.fetched = true; if (buildConfigId) { $scope.buildConfig = $scope.model.getBuildConfig(buildConfigId); } } } updateData(); /* $scope.$keepPolling = () => keepPollingModel; $scope.fetch = PollHelpers.setupPolling($scope, (next:() => void) => { var url = buildsRestURL(); $http.get(url). success(function (data, status, headers, config) { if (data) { //console.log("got data " + angular.toJson(data, true)); $scope.builds = enrichBuilds(data.items); $scope.fetched = true; if ($scope.model) { $scope.buildConfig = $scope.model.getBuildConfig($scope.buildConfigId); } } Core.$apply($scope); next(); }). error(function (data, status, headers, config) { log.warn("Failed to load " + url + " " + data + " " + status); Core.$apply($scope); next(); }); }); $scope.fetch(); */ }]); }