mirror of
https://github.com/ansible/awx.git
synced 2026-01-11 10:00:01 -03:30
Add receptor host identifier to group_vars
Add disconnected link state topology
This commit is contained in:
parent
f7fdb7fe8d
commit
6834568c5d
@ -1,3 +1,4 @@
|
||||
receptor_host_identifier: {{ instance.hostname }}
|
||||
receptor_user: awx
|
||||
receptor_group: awx
|
||||
receptor_verify: true
|
||||
|
||||
@ -1,12 +1,11 @@
|
||||
# Generated by Django 3.2.16 on 2023-05-01 20:00
|
||||
# Generated by Django 4.2 on 2023-05-17 18:31
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.expressions
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
('main', '0182_constructed_inventory'),
|
||||
('main', '0184_django_indexes'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
@ -31,8 +30,6 @@ class Migration(migrations.Migration):
|
||||
),
|
||||
migrations.AddConstraint(
|
||||
model_name='instancelink',
|
||||
constraint=models.CheckConstraint(
|
||||
check=models.Q(('source', django.db.models.expressions.F('target')), _negated=True), name='source_and_target_can_not_be_equal'
|
||||
),
|
||||
constraint=models.CheckConstraint(check=models.Q(('source', models.F('target')), _negated=True), name='source_and_target_can_not_be_equal'),
|
||||
),
|
||||
]
|
||||
@ -5,7 +5,11 @@
|
||||
<title data-cy="migration-title">{{ title }}</title>
|
||||
<meta
|
||||
http-equiv="Content-Security-Policy"
|
||||
content="default-src 'self'; connect-src 'self' ws: wss:; style-src 'self' 'unsafe-inline'; script-src 'self' 'nonce-{{ csp_nonce }}' *.pendo.io; img-src 'self' *.pendo.io data:;"
|
||||
content="default-src 'self';
|
||||
connect-src 'self' ws: wss:;
|
||||
style-src 'self' 'unsafe-inline';
|
||||
script-src 'self' 'nonce-{{ csp_nonce }}' *.pendo.io;
|
||||
img-src 'self' *.pendo.io data:;"
|
||||
/>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
|
||||
@ -138,7 +138,7 @@ function InstanceListItem({
|
||||
rowIndex,
|
||||
isSelected,
|
||||
onSelect,
|
||||
disable: !isExecutionNode,
|
||||
disable: !(isExecutionNode || isHopNode),
|
||||
}}
|
||||
dataLabel={t`Selected`}
|
||||
/>
|
||||
|
||||
@ -33,7 +33,7 @@ function RemoveInstanceButton({ itemsToRemove, onRemove, isK8s }) {
|
||||
const [removeDetails, setRemoveDetails] = useState(null);
|
||||
const [isLoading, setIsLoading] = useState(false);
|
||||
|
||||
const cannotRemove = (item) => item.node_type !== 'execution';
|
||||
const cannotRemove = (item) => !(item.node_type === 'execution' || item.node_type === 'hop');
|
||||
|
||||
const toggleModal = async (isOpen) => {
|
||||
setRemoveDetails(null);
|
||||
|
||||
@ -252,6 +252,21 @@ function Legend() {
|
||||
</DescriptionListTerm>
|
||||
<DescriptionListDescription>{t`Established`}</DescriptionListDescription>
|
||||
</DescriptionListGroup>
|
||||
<DescriptionListGroup>
|
||||
<DescriptionListTerm>
|
||||
<svg width="20" height="15" xmlns="http://www.w3.org/2000/svg">
|
||||
<line
|
||||
x1="0"
|
||||
y1="9"
|
||||
x2="20"
|
||||
y2="9"
|
||||
stroke="#c9700b"
|
||||
strokeWidth="4"
|
||||
/>
|
||||
</svg>
|
||||
</DescriptionListTerm>
|
||||
<DescriptionListDescription>{t`Disconnected`}</DescriptionListDescription>
|
||||
</DescriptionListGroup>
|
||||
<DescriptionListGroup>
|
||||
<DescriptionListTerm>
|
||||
<svg width="20" height="15" xmlns="http://www.w3.org/2000/svg">
|
||||
|
||||
@ -208,9 +208,15 @@ function MeshGraph({
|
||||
.attr('class', (_, i) => `link-${i}`)
|
||||
.attr('data-cy', (d) => `${d.source.hostname}-${d.target.hostname}`)
|
||||
.style('fill', 'none')
|
||||
.style('stroke', (d) =>
|
||||
d.link_state === 'removing' ? '#C9190B' : '#CCC'
|
||||
)
|
||||
.style('stroke', (d) => {
|
||||
if (d.link_state === 'removing') {
|
||||
return '#C9190B';
|
||||
}
|
||||
if (d.link_state === 'disconnected') {
|
||||
return '#c9700b';
|
||||
}
|
||||
return '#CCC';
|
||||
})
|
||||
.style('stroke-width', '2px')
|
||||
.style('stroke-dasharray', (d) => renderLinkState(d.link_state))
|
||||
.attr('pointer-events', 'none')
|
||||
@ -348,9 +354,15 @@ function MeshGraph({
|
||||
.selectAll(`.link-${s.index}`)
|
||||
.transition()
|
||||
.duration(50)
|
||||
.style('stroke', (d) =>
|
||||
d.link_state === 'removing' ? '#C9190B' : '#CCC'
|
||||
)
|
||||
.style('stroke', (d) => {
|
||||
if (d.link_state === 'removing') {
|
||||
return '#C9190B';
|
||||
}
|
||||
if (d.link_state === 'disconnected') {
|
||||
return '#c9700b';
|
||||
}
|
||||
return '#CCC';
|
||||
})
|
||||
.style('stroke-width', '2px')
|
||||
.attr('marker-end', 'url(#end)');
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user