@backstage-community/plugin-github-actions 0.9.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dist/alpha/entityCards.esm.js +5 -5
- package/dist/alpha/entityCards.esm.js.map +1 -1
- package/dist/alpha/entityContent.esm.js +2 -2
- package/dist/alpha/entityContent.esm.js.map +1 -1
- package/dist/alpha.d.ts +4 -4
- package/dist/components/Cards/Cards.esm.js +19 -10
- package/dist/components/Cards/Cards.esm.js.map +1 -1
- package/dist/components/Cards/RecentWorkflowRunsCard.esm.js +34 -30
- package/dist/components/Cards/RecentWorkflowRunsCard.esm.js.map +1 -1
- package/dist/components/Router.esm.js +13 -10
- package/dist/components/Router.esm.js.map +1 -1
- package/dist/components/WorkflowRunDetails/WorkflowRunDetails.esm.js +94 -36
- package/dist/components/WorkflowRunDetails/WorkflowRunDetails.esm.js.map +1 -1
- package/dist/components/WorkflowRunLogs/WorkflowRunLogs.esm.js +41 -35
- package/dist/components/WorkflowRunLogs/WorkflowRunLogs.esm.js.map +1 -1
- package/dist/components/WorkflowRunStatus/WorkflowRunStatus.esm.js +12 -9
- package/dist/components/WorkflowRunStatus/WorkflowRunStatus.esm.js.map +1 -1
- package/dist/components/WorkflowRunsCard/WorkflowRunsCard.esm.js +198 -165
- package/dist/components/WorkflowRunsCard/WorkflowRunsCard.esm.js.map +1 -1
- package/dist/components/WorkflowRunsTable/WorkflowRunsTable.esm.js +25 -18
- package/dist/components/WorkflowRunsTable/WorkflowRunsTable.esm.js.map +1 -1
- package/dist/components/useWorkflowRuns.esm.js +1 -1
- package/dist/components/useWorkflowRuns.esm.js.map +1 -1
- package/dist/index.d.ts +15 -18
- package/package.json +16 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowRunsTable.esm.js","sources":["../../../src/components/WorkflowRunsTable/WorkflowRunsTable.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React from 'react';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport IconButton from '@material-ui/core/IconButton';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport Button from '@material-ui/core/Button';\nimport RetryIcon from '@material-ui/icons/Replay';\nimport GitHubIcon from '@material-ui/icons/GitHub';\nimport { Link as RouterLink } from 'react-router-dom';\nimport { useWorkflowRuns, WorkflowRun } from '../useWorkflowRuns';\nimport { WorkflowRunStatus } from '../WorkflowRunStatus';\nimport SyncIcon from '@material-ui/icons/Sync';\nimport { buildRouteRef } from '../../routes';\nimport { getProjectNameFromEntity } from '../getProjectNameFromEntity';\nimport { Entity } from '@backstage/catalog-model';\n\nimport {\n EmptyState,\n Table,\n TableColumn,\n Link,\n} from '@backstage/core-components';\nimport { useRouteRef } from '@backstage/core-plugin-api';\nimport { getHostnameFromEntity } from '../getHostnameFromEntity';\nimport { getStatusDescription } from '../WorkflowRunStatus/WorkflowRunStatus';\n\n// Utility function to truncate string at the first newline character\nconst truncateAtNewline = (str: string) => {\n const newlineIndex = str.indexOf('\\n');\n return newlineIndex !== -1 ? str.substring(0, newlineIndex) : str;\n};\n\nconst generatedColumns: TableColumn<Partial<WorkflowRun>>[] = [\n {\n title: 'ID',\n field: 'id',\n type: 'numeric',\n width: '150px',\n },\n {\n title: 'Message',\n field: 'message',\n highlight: true,\n render: row => {\n const LinkWrapper = () => {\n const routeLink = useRouteRef(buildRouteRef);\n const truncatedMessage = truncateAtNewline(row.message!);\n return (\n <Link\n component={RouterLink}\n to={routeLink({ id: row.id! })}\n title={row.message} // display full message on hover\n >\n {truncatedMessage}\n </Link>\n );\n };\n\n return <LinkWrapper />;\n },\n },\n {\n title: 'Source',\n render: row => (\n <Typography variant=\"body2\" noWrap>\n <Typography paragraph variant=\"body2\">\n {row.source?.branchName}\n </Typography>\n <Typography paragraph variant=\"body2\">\n {row.source?.commit.hash}\n </Typography>\n </Typography>\n ),\n },\n {\n title: 'Workflow',\n field: 'workflowName',\n },\n {\n title: 'Status',\n customSort: (d1, d2) => {\n return getStatusDescription(d1).localeCompare(getStatusDescription(d2));\n },\n render: row => (\n <Box display=\"flex\" alignItems=\"center\">\n <WorkflowRunStatus status={row.status} conclusion={row.conclusion} />\n </Box>\n ),\n },\n {\n title: 'Actions',\n render: (row: Partial<WorkflowRun>) => (\n <Tooltip title=\"Rerun workflow\">\n <IconButton onClick={row.onReRunClick}>\n <RetryIcon />\n </IconButton>\n </Tooltip>\n ),\n width: '10%',\n },\n];\n\ntype Props = {\n loading: boolean;\n retry: () => void;\n runs?: WorkflowRun[];\n projectName: string;\n page: number;\n onChangePage: (page: number) => void;\n total: number;\n pageSize: number;\n onChangePageSize: (pageSize: number) => void;\n};\n\nexport const WorkflowRunsTableView = ({\n projectName,\n loading,\n pageSize,\n page,\n retry,\n runs,\n onChangePage,\n onChangePageSize,\n total,\n}: Props) => {\n return (\n <Table\n isLoading={loading}\n options={{ paging: true, pageSize, padding: 'dense' }}\n totalCount={total}\n page={page}\n actions={[\n {\n icon: () => <SyncIcon />,\n tooltip: 'Reload workflow runs',\n isFreeAction: true,\n onClick: () => retry(),\n },\n ]}\n data={runs ?? []}\n onPageChange={onChangePage}\n onRowsPerPageChange={onChangePageSize}\n style={{ width: '100%' }}\n title={\n <Box display=\"flex\" alignItems=\"center\">\n <GitHubIcon />\n <Box mr={1} />\n <Typography variant=\"h6\">{projectName}</Typography>\n </Box>\n }\n columns={generatedColumns}\n />\n );\n};\n\nexport const WorkflowRunsTable = ({\n entity,\n branch,\n}: {\n entity: Entity;\n branch?: string;\n}) => {\n const projectName = getProjectNameFromEntity(entity);\n const hostname = getHostnameFromEntity(entity);\n const [owner, repo] = (projectName ?? '/').split('/');\n const [{ runs, ...tableProps }, { retry, setPage, setPageSize }] =\n useWorkflowRuns({\n hostname,\n owner,\n repo,\n branch,\n });\n\n const githubHost = hostname || 'github.com';\n const hasNoRuns = !tableProps.loading && !runs;\n\n return hasNoRuns ? (\n <EmptyState\n missing=\"data\"\n title=\"No Workflow Data\"\n description=\"This component has GitHub Actions enabled, but no data was found. Have you created any Workflows? Click the button below to create a new Workflow.\"\n action={\n <Button\n variant=\"contained\"\n color=\"primary\"\n href={`https://${githubHost}/${projectName}/actions/new`}\n >\n Create new Workflow\n </Button>\n }\n />\n ) : (\n <WorkflowRunsTableView\n {...tableProps}\n runs={runs}\n loading={tableProps.loading}\n retry={retry}\n onChangePageSize={setPageSize}\n onChangePage={setPage}\n />\n );\n};\n"],"names":["RouterLink"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorkflowRunsTable.esm.js","sources":["../../../src/components/WorkflowRunsTable/WorkflowRunsTable.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport IconButton from '@material-ui/core/IconButton';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport Button from '@material-ui/core/Button';\nimport RetryIcon from '@material-ui/icons/Replay';\nimport GitHubIcon from '@material-ui/icons/GitHub';\nimport { Link as RouterLink } from 'react-router-dom';\nimport { useWorkflowRuns, WorkflowRun } from '../useWorkflowRuns';\nimport { WorkflowRunStatus } from '../WorkflowRunStatus';\nimport SyncIcon from '@material-ui/icons/Sync';\nimport { buildRouteRef } from '../../routes';\nimport { getProjectNameFromEntity } from '../getProjectNameFromEntity';\nimport { Entity } from '@backstage/catalog-model';\n\nimport {\n EmptyState,\n Table,\n TableColumn,\n Link,\n} from '@backstage/core-components';\nimport { useRouteRef } from '@backstage/core-plugin-api';\nimport { getHostnameFromEntity } from '../getHostnameFromEntity';\nimport { getStatusDescription } from '../WorkflowRunStatus/WorkflowRunStatus';\n\n// Utility function to truncate string at the first newline character\nconst truncateAtNewline = (str: string) => {\n const newlineIndex = str.indexOf('\\n');\n return newlineIndex !== -1 ? str.substring(0, newlineIndex) : str;\n};\n\nconst generatedColumns: TableColumn<Partial<WorkflowRun>>[] = [\n {\n title: 'ID',\n field: 'id',\n type: 'numeric',\n width: '150px',\n },\n {\n title: 'Message',\n field: 'message',\n highlight: true,\n render: row => {\n const LinkWrapper = () => {\n const routeLink = useRouteRef(buildRouteRef);\n const truncatedMessage = truncateAtNewline(row.message!);\n return (\n <Link\n component={RouterLink}\n to={routeLink({ id: row.id! })}\n title={row.message} // display full message on hover\n >\n {truncatedMessage}\n </Link>\n );\n };\n\n return <LinkWrapper />;\n },\n },\n {\n title: 'Source',\n render: row => (\n <Typography variant=\"body2\" noWrap>\n <Typography paragraph variant=\"body2\">\n {row.source?.branchName}\n </Typography>\n <Typography paragraph variant=\"body2\">\n {row.source?.commit.hash}\n </Typography>\n </Typography>\n ),\n },\n {\n title: 'Workflow',\n field: 'workflowName',\n },\n {\n title: 'Status',\n customSort: (d1, d2) => {\n return getStatusDescription(d1).localeCompare(getStatusDescription(d2));\n },\n render: row => (\n <Box display=\"flex\" alignItems=\"center\">\n <WorkflowRunStatus status={row.status} conclusion={row.conclusion} />\n </Box>\n ),\n },\n {\n title: 'Actions',\n render: (row: Partial<WorkflowRun>) => (\n <Tooltip title=\"Rerun workflow\">\n <IconButton onClick={row.onReRunClick}>\n <RetryIcon />\n </IconButton>\n </Tooltip>\n ),\n width: '10%',\n },\n];\n\ntype Props = {\n loading: boolean;\n retry: () => void;\n runs?: WorkflowRun[];\n projectName: string;\n page: number;\n onChangePage: (page: number) => void;\n total: number;\n pageSize: number;\n onChangePageSize: (pageSize: number) => void;\n};\n\nexport const WorkflowRunsTableView = ({\n projectName,\n loading,\n pageSize,\n page,\n retry,\n runs,\n onChangePage,\n onChangePageSize,\n total,\n}: Props) => {\n return (\n <Table\n isLoading={loading}\n options={{ paging: true, pageSize, padding: 'dense' }}\n totalCount={total}\n page={page}\n actions={[\n {\n icon: () => <SyncIcon />,\n tooltip: 'Reload workflow runs',\n isFreeAction: true,\n onClick: () => retry(),\n },\n ]}\n data={runs ?? []}\n onPageChange={onChangePage}\n onRowsPerPageChange={onChangePageSize}\n style={{ width: '100%' }}\n title={\n <Box display=\"flex\" alignItems=\"center\">\n <GitHubIcon />\n <Box mr={1} />\n <Typography variant=\"h6\">{projectName}</Typography>\n </Box>\n }\n columns={generatedColumns}\n />\n );\n};\n\nexport const WorkflowRunsTable = ({\n entity,\n branch,\n}: {\n entity: Entity;\n branch?: string;\n}) => {\n const projectName = getProjectNameFromEntity(entity);\n const hostname = getHostnameFromEntity(entity);\n const [owner, repo] = (projectName ?? '/').split('/');\n const [{ runs, ...tableProps }, { retry, setPage, setPageSize }] =\n useWorkflowRuns({\n hostname,\n owner,\n repo,\n branch,\n });\n\n const githubHost = hostname || 'github.com';\n const hasNoRuns = !tableProps.loading && !runs;\n\n return hasNoRuns ? (\n <EmptyState\n missing=\"data\"\n title=\"No Workflow Data\"\n description=\"This component has GitHub Actions enabled, but no data was found. Have you created any Workflows? Click the button below to create a new Workflow.\"\n action={\n <Button\n variant=\"contained\"\n color=\"primary\"\n href={`https://${githubHost}/${projectName}/actions/new`}\n >\n Create new Workflow\n </Button>\n }\n />\n ) : (\n <WorkflowRunsTableView\n {...tableProps}\n runs={runs}\n loading={tableProps.loading}\n retry={retry}\n onChangePageSize={setPageSize}\n onChangePage={setPage}\n />\n );\n};\n"],"names":["RouterLink"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWorkflowRuns.esm.js","sources":["../../src/components/useWorkflowRuns.ts"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { useState } from 'react';\nimport useAsyncRetry from 'react-use/esm/useAsyncRetry';\nimport { githubActionsApiRef } from '../api/GithubActionsApi';\nimport { useApi, errorApiRef } from '@backstage/core-plugin-api';\nimport { Branch } from '../api';\n\nexport type WorkflowRun = {\n workflowName?: string;\n id: string;\n message?: string;\n url?: string;\n githubUrl?: string;\n source: {\n branchName?: string;\n commit: {\n hash?: string;\n url?: string;\n };\n };\n status?: string;\n conclusion?: string;\n onReRunClick: () => void;\n};\n\nexport function useWorkflowRuns({\n hostname,\n owner,\n repo,\n branch,\n initialPageSize = 6,\n}: {\n hostname?: string;\n owner: string;\n repo: string;\n branch?: string | undefined;\n initialPageSize?: number;\n}) {\n const api = useApi(githubActionsApiRef);\n\n const errorApi = useApi(errorApiRef);\n\n const [total, setTotal] = useState(0);\n const [page, setPage] = useState(0);\n const [pageSize, setPageSize] = useState(initialPageSize);\n const [branches, setBranches] = useState<Branch[]>([]);\n const [defaultBranch, setDefaultBranch] = useState<string>('');\n\n const {\n loading,\n value: runs,\n retry,\n error,\n } = useAsyncRetry<WorkflowRun[]>(async () => {\n const fetchedDefaultBranch = await api.getDefaultBranch({\n hostname,\n owner,\n repo,\n });\n\n setDefaultBranch(fetchedDefaultBranch);\n let selectedBranch = branch;\n if (branch === 'default') {\n selectedBranch = fetchedDefaultBranch;\n }\n\n const fetchBranches = async () => {\n let next = true;\n let iteratePage =
|
|
1
|
+
{"version":3,"file":"useWorkflowRuns.esm.js","sources":["../../src/components/useWorkflowRuns.ts"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { useState } from 'react';\nimport useAsyncRetry from 'react-use/esm/useAsyncRetry';\nimport { githubActionsApiRef } from '../api/GithubActionsApi';\nimport { useApi, errorApiRef } from '@backstage/core-plugin-api';\nimport { Branch } from '../api';\n\nexport type WorkflowRun = {\n workflowName?: string;\n id: string;\n message?: string;\n url?: string;\n githubUrl?: string;\n source: {\n branchName?: string;\n commit: {\n hash?: string;\n url?: string;\n };\n };\n status?: string;\n conclusion?: string;\n onReRunClick: () => void;\n};\n\nexport function useWorkflowRuns({\n hostname,\n owner,\n repo,\n branch,\n initialPageSize = 6,\n}: {\n hostname?: string;\n owner: string;\n repo: string;\n branch?: string | undefined;\n initialPageSize?: number;\n}) {\n const api = useApi(githubActionsApiRef);\n\n const errorApi = useApi(errorApiRef);\n\n const [total, setTotal] = useState(0);\n const [page, setPage] = useState(0);\n const [pageSize, setPageSize] = useState(initialPageSize);\n const [branches, setBranches] = useState<Branch[]>([]);\n const [defaultBranch, setDefaultBranch] = useState<string>('');\n\n const {\n loading,\n value: runs,\n retry,\n error,\n } = useAsyncRetry<WorkflowRun[]>(async () => {\n const fetchedDefaultBranch = await api.getDefaultBranch({\n hostname,\n owner,\n repo,\n });\n\n setDefaultBranch(fetchedDefaultBranch);\n let selectedBranch = branch;\n if (branch === 'default') {\n selectedBranch = fetchedDefaultBranch;\n }\n\n const fetchBranches = async () => {\n let next = true;\n let iteratePage = 1;\n const branchSet: Branch[] = [];\n\n while (next) {\n const branchesData = await api.listBranches({\n hostname,\n owner,\n repo,\n page: iteratePage,\n });\n if (branchesData.length === 0) {\n next = false;\n }\n iteratePage++;\n branchSet.push(...branchesData);\n }\n\n return branchSet;\n };\n\n const branchSet = await fetchBranches();\n setBranches(branchSet);\n\n // GitHub API pagination count starts from 1\n const workflowRunsData = await api.listWorkflowRuns({\n hostname,\n owner,\n repo,\n pageSize,\n page: page + 1,\n branch: selectedBranch,\n });\n setTotal(workflowRunsData.total_count);\n // Transformation here\n return workflowRunsData.workflow_runs.map(run => ({\n workflowName: run.name ?? undefined,\n message: run.head_commit?.message,\n id: `${run.id}`,\n onReRunClick: async () => {\n try {\n await api.reRunWorkflow({\n hostname,\n owner,\n repo,\n runId: run.id,\n });\n } catch (e) {\n errorApi.post(\n new Error(`Failed to rerun the workflow: ${(e as Error).message}`),\n );\n }\n },\n source: {\n branchName: run.head_branch ?? undefined,\n commit: {\n hash: run.head_commit?.id,\n url: run.head_repository?.branches_url?.replace(\n '{/branch}',\n run.head_branch ?? '',\n ),\n },\n },\n status: run.status ?? undefined,\n conclusion: run.conclusion ?? undefined,\n url: run.url,\n githubUrl: run.html_url,\n }));\n }, [page, pageSize, repo, owner]);\n\n return [\n {\n page,\n pageSize,\n loading,\n runs,\n branches,\n defaultBranch,\n projectName: `${owner}/${repo}`,\n total,\n error,\n },\n {\n runs,\n setPage,\n setPageSize,\n retry,\n },\n ] as const;\n}\n"],"names":["branchSet"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import * as
|
|
4
|
-
import react__default from 'react';
|
|
1
|
+
import * as _backstage_core_components from '@backstage/core-components';
|
|
2
|
+
import { InfoCardVariants } from '@backstage/core-components';
|
|
3
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
5
4
|
import * as _backstage_core_plugin_api from '@backstage/core-plugin-api';
|
|
6
5
|
import { ConfigApi } from '@backstage/core-plugin-api';
|
|
7
|
-
import * as _backstage_core_plugin_api__ from '@backstage/core-plugin-api/*';
|
|
8
6
|
import { RestEndpointMethodTypes } from '@octokit/rest';
|
|
9
7
|
import { ScmAuthApi } from '@backstage/integration-react';
|
|
10
8
|
import { Entity } from '@backstage/catalog-model';
|
|
11
|
-
import { InfoCardVariants } from '@backstage/core-components';
|
|
12
9
|
|
|
13
10
|
/** @public */
|
|
14
|
-
declare const githubActionsApiRef:
|
|
11
|
+
declare const githubActionsApiRef: _backstage_core_plugin_api.ApiRef<GithubActionsApi>;
|
|
15
12
|
/**
|
|
16
13
|
* A client for fetching information about GitHub actions.
|
|
17
14
|
*
|
|
@@ -188,40 +185,40 @@ declare const githubActionsPlugin: _backstage_core_plugin_api.BackstagePlugin<{
|
|
|
188
185
|
entityContent: _backstage_core_plugin_api.RouteRef<undefined>;
|
|
189
186
|
}, {}, {}>;
|
|
190
187
|
/** @public */
|
|
191
|
-
declare const EntityGithubActionsContent: (props: RouterProps) =>
|
|
188
|
+
declare const EntityGithubActionsContent: (props: RouterProps) => react_jsx_runtime.JSX.Element;
|
|
192
189
|
/** @public */
|
|
193
190
|
declare const EntityLatestGithubActionRunCard: (props: {
|
|
194
191
|
branch?: string | undefined;
|
|
195
|
-
variant?:
|
|
196
|
-
}) =>
|
|
192
|
+
variant?: _backstage_core_components.InfoCardVariants | undefined;
|
|
193
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
197
194
|
/** @public */
|
|
198
195
|
declare const EntityLatestGithubActionsForBranchCard: (props: {
|
|
199
196
|
branch?: string | undefined;
|
|
200
|
-
variant?:
|
|
201
|
-
}) =>
|
|
197
|
+
variant?: _backstage_core_components.InfoCardVariants | undefined;
|
|
198
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
202
199
|
/** @public */
|
|
203
200
|
declare const EntityRecentGithubActionsRunsCard: (props: {
|
|
204
201
|
branch?: string | undefined;
|
|
205
202
|
dense?: boolean | undefined;
|
|
206
203
|
limit?: number | undefined;
|
|
207
|
-
variant?:
|
|
208
|
-
}) =>
|
|
204
|
+
variant?: _backstage_core_components.InfoCardVariants | undefined;
|
|
205
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
209
206
|
|
|
210
207
|
/** @public */
|
|
211
208
|
declare const isGithubActionsAvailable: (entity: Entity) => boolean;
|
|
212
209
|
/** @public */
|
|
213
|
-
declare const Router: (props: RouterProps) =>
|
|
210
|
+
declare const Router: (props: RouterProps) => react_jsx_runtime.JSX.Element;
|
|
214
211
|
|
|
215
212
|
/** @public */
|
|
216
213
|
declare const LatestWorkflowRunCard: (props: {
|
|
217
214
|
branch?: string;
|
|
218
215
|
variant?: InfoCardVariants;
|
|
219
|
-
}) =>
|
|
216
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
220
217
|
/** @public */
|
|
221
218
|
declare const LatestWorkflowsForBranchCard: (props: {
|
|
222
219
|
branch?: string;
|
|
223
220
|
variant?: InfoCardVariants;
|
|
224
|
-
}) =>
|
|
221
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
225
222
|
|
|
226
223
|
/** @public */
|
|
227
224
|
declare const RecentWorkflowRunsCard: (props: {
|
|
@@ -229,7 +226,7 @@ declare const RecentWorkflowRunsCard: (props: {
|
|
|
229
226
|
dense?: boolean;
|
|
230
227
|
limit?: number;
|
|
231
228
|
variant?: InfoCardVariants;
|
|
232
|
-
}) =>
|
|
229
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
233
230
|
|
|
234
231
|
/** @public */
|
|
235
232
|
declare const GITHUB_ACTIONS_ANNOTATION = "github.com/project-slug";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@backstage-community/plugin-github-actions",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "A Backstage plugin that integrates towards GitHub Actions",
|
|
5
5
|
"backstage": {
|
|
6
6
|
"role": "frontend-plugin",
|
|
@@ -31,11 +31,11 @@
|
|
|
31
31
|
},
|
|
32
32
|
"typesVersions": {
|
|
33
33
|
"*": {
|
|
34
|
-
"*": [
|
|
35
|
-
"dist/index.d.ts"
|
|
36
|
-
],
|
|
37
34
|
"alpha": [
|
|
38
35
|
"dist/alpha.d.ts"
|
|
36
|
+
],
|
|
37
|
+
"package.json": [
|
|
38
|
+
"package.json"
|
|
39
39
|
]
|
|
40
40
|
}
|
|
41
41
|
},
|
|
@@ -68,13 +68,13 @@
|
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
70
70
|
"@backstage/catalog-model": "^1.7.3",
|
|
71
|
-
"@backstage/core-compat-api": "^0.4.
|
|
72
|
-
"@backstage/core-components": "^0.17.
|
|
73
|
-
"@backstage/core-plugin-api": "^1.10.
|
|
74
|
-
"@backstage/frontend-plugin-api": "^0.10.
|
|
75
|
-
"@backstage/integration": "^1.16.
|
|
76
|
-
"@backstage/integration-react": "^1.2.
|
|
77
|
-
"@backstage/plugin-catalog-react": "^1.
|
|
71
|
+
"@backstage/core-compat-api": "^0.4.1",
|
|
72
|
+
"@backstage/core-components": "^0.17.1",
|
|
73
|
+
"@backstage/core-plugin-api": "^1.10.6",
|
|
74
|
+
"@backstage/frontend-plugin-api": "^0.10.1",
|
|
75
|
+
"@backstage/integration": "^1.16.3",
|
|
76
|
+
"@backstage/integration-react": "^1.2.6",
|
|
77
|
+
"@backstage/plugin-catalog-react": "^1.17.0",
|
|
78
78
|
"@material-ui/core": "^4.12.2",
|
|
79
79
|
"@material-ui/icons": "^4.9.1",
|
|
80
80
|
"@material-ui/lab": "4.0.0-alpha.61",
|
|
@@ -85,11 +85,11 @@
|
|
|
85
85
|
"react-use": "^17.2.4"
|
|
86
86
|
},
|
|
87
87
|
"devDependencies": {
|
|
88
|
-
"@backstage/cli": "^0.
|
|
89
|
-
"@backstage/core-app-api": "^1.16.
|
|
90
|
-
"@backstage/dev-utils": "^1.1.
|
|
91
|
-
"@backstage/frontend-test-utils": "^0.3.
|
|
92
|
-
"@backstage/test-utils": "^1.7.
|
|
88
|
+
"@backstage/cli": "^0.32.0",
|
|
89
|
+
"@backstage/core-app-api": "^1.16.1",
|
|
90
|
+
"@backstage/dev-utils": "^1.1.9",
|
|
91
|
+
"@backstage/frontend-test-utils": "^0.3.1",
|
|
92
|
+
"@backstage/test-utils": "^1.7.7",
|
|
93
93
|
"@testing-library/dom": "^10.0.0",
|
|
94
94
|
"@testing-library/jest-dom": "^6.0.0",
|
|
95
95
|
"@testing-library/react": "^15.0.0",
|